gpt4 book ai didi

Python执行远程命令,不等待返回

转载 作者:行者123 更新时间:2023-12-01 04:56:46 24 4
gpt4 key购买 nike

我正在测试 corosync 集群。我正在尝试使具有 float IP 的接口(interface)失败,以确保资源使用 python 迁移到另一个节点。

现在的困境是我的命令确实在远程计算机上执行,但我的测试代码永远挂起,等待它永远不会得到的答复——节点将由于注入(inject)的失败而重新启动。

ssh = SSHClient(self.get_ms_ip(ms),
self.get_ms_user(ms),
self.get_ms_password(ms))
ssh.connect()
self.logger.info("Failing FIP eth now on %s" % ms)
ssh.exec_command(cmd, timeout=1)
#Code never reached this comment.

在 python 中,如何发送命令并继续而不等待任何返回?我尝试按照此处的建议用 subprocess.Popen 包装 ssh.exec_command Run Process and Don't Wait但这并没有产生任何不同。

最佳答案

您不需要子进程,您需要线程。生成一个运行 exec_command 调用的线程,您将能够继续执行您的代码。

关于Python执行远程命令,不等待返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27199493/

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