gpt4 book ai didi

python - 使用python动态创建bash别名

转载 作者:行者123 更新时间:2023-11-28 22:51:15 24 4
gpt4 key购买 nike

我正在尝试使用 python 动态创建 bash 别名(例如,用于登录一组服务器的别名)。我很想能够做这样的事情:

from subprocess import call
SERVERS = [
("example", "user@example.com"),
#more servers in list
]

for server in SERVERS:
call('alias %s="ssh %s"' % (server[0], server[1]), shell=True)

问题是子进程在单独的 shell session 中启 Action 业,因此程序运行良好,但对我运行它的 shell session 没有任何作用。

python 的 os.system 或尝试打印命令并将它们通过管道传输到 bash 时也会出现同样的问题(所有这些都会创建别名,但在程序执行后会立即销毁的新 shell 中完成)。

最终,目标是从 .bashrc 运行这个脚本

如何做到这一点?

最佳答案

您应该将别名命令写入标准输出。 (例如,只使用打印)。
然后调用 Python 脚本的 shell 可以自己运行别名命令。

正如@that other 的评论

eval "$(python yourscript.py)"

在你的 .bashrc 中应该这样做

关于python - 使用python动态创建bash别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21690811/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com