使用时,Python parallelsh run_命令不会超时pssh.客户

2024-09-30 05:20:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下代码:

from pssh.clients import ParallelSSHClient
#-------------------------------------------------

hosts = [ IP1, IP2, ... IPn]
host_config = { dict containing userid & passwd for each host }

clients = ParallelSSHClient(hosts, host_config=host_config,
                           num_retries=1, timeout=3)

output = clients.run_command("ls", stop_on_errors=False, timeout=3)
print output

如果我的主机有所有有效的IP,那么我得到“输出”。但是,如果其中一个IP无效(不存在主机),则run_命令将永远挂起。甚至尝试过使用“use_pty=True”参数来运行\u命令。在

奇怪的是,如果我使用不推荐的方法pssh_client而不是clients如下所示:

^{pr2}$

它像预期的那样超时。要么是新的导入方式引入了一个bug,要么是有一些新的方法正确地指定了超时。我宁愿使用推荐的方式而不是不推荐的方式。但推荐的方法不适合我。有人知道我是不是做错了什么?在


Tags: 方法run代码from命令ipconfighost

热门问题