gpt4 book ai didi

python Fabric 多个命令

转载 作者:行者123 更新时间:2023-12-01 02:54:24 27 4
gpt4 key购买 nike

我试图了解 Fabric 如何在一台机器上使用多个命令。我需要在每台主机(数千台主机)上运行多个命令,并且想知道什么是最好的。

使用多次运行:

res_1 = run(command_1)
res_2 = run(command_2)
...
...
res_n = run(command_n)

或者:

res = run(command_1 && command_2 && ... command_n)
res.splitlines()
res_1 = res[0]
res_2 = res[1]
...
...
res_n = res[n-1]

我想知道的是fabric如何处理多次运行,它会打开多个 session 还是在同一个 session 中执行所有命令?

最佳答案

无论您使用多个 run 调用还是使用 && 调用单个 run 调用,据我所知,fabric 都只会打开一个网络连接。两者之间的区别在于每个新的 run 在不同的环境中执行。例如,您可以尝试这个。

run('ls')
run('cd /tmp/')
run('ls')

两次都会显示您的主目录列表。但如果你尝试这个

run('ls')
run('cd /tmp/ && ls')

它会第一次向您显示您的主目录,然后是 /tmp/ 列表。因此,如果您希望从一个命令到另一个命令保留状态,您应该执行 run('cmd1 && cmd1') 但如果您不介意,则应该使用多个 run 调用。

关于python Fabric 多个命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44364450/

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