gpt4 book ai didi

python - 模拟 paramiko.SSHClient().exec_command()

转载 作者:太空宇宙 更新时间:2023-11-04 03:16:27 27 4
gpt4 key购买 nike

我需要通过 ssh.exec_command() 模拟执行一些远程命令它返回元组 (stdin, stdout, stderr) 作为 paramiko.ChanelFile 对象。

因此,我将命令输出为字符串(我希望 exec_command() 返回)以及如何使用我的输出字符串创建 ChanelFile 对象的问题。

伪代码:

    def send_command(self, cmd)
self.client.connect(hostname=self.host,
username=self.user,
password=self.password,
timeout=self.timeout)
stdin, stdout, stderr = self.client.exec_command(cmd)

return stdin, stdout, stderr

if __name__ == '__main__':
stdin, stdout, stderr = report.send_command('ls -la')
resp = stdout.read().strip()

所以我需要创建 stout 才能在其上运行 read() 方法。

最佳答案

参见 https://stackoverflow.com/a/8168742/5512755MagicMock 也适用于此。

stdout = mock.MagicMock()
stdout.read().strip.return_value = "file1\nfile2\nfile3\n"

会成功的。

关于python - 模拟 paramiko.SSHClient().exec_command(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36135687/

27 4 0
文章推荐: PythonAnywhere 连接被拒绝错误 : [Errno 111] Connection refused when used with Twilio
文章推荐: html - 为什么对我网站上的某些图像应用了一个奇怪的类?
文章推荐: javascript - 如何根据