【发布时间】:2016-09-02 20:32:20
【问题描述】:
我是 Python 以及编程世界的新手。经过过去 2 天的一些研究,我现在能够成功地通过 SSH 连接到 Cisco 路由器并执行一组命令。但是我最初的目标是将结果输出打印到文本文件中。检查了论坛成员的许多帖子,这些帖子帮助我构建了代码,但我无法将结果打印在文本文件上。请帮忙。
这是我的代码:
import paramiko
import sys
import os
dssh = paramiko.SSHClient()
dssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
dssh.connect('10.0.0.1', username='cisco', password='cisco')
stdin, stdout, stderr = dssh.exec_command('sh ip ssh')
print stdout.read()
f = open('output.txt', 'a')
f.write(stdout.read())
f.close()
dssh.close()
【问题讨论】:
-
您已经通过调用
read并传递给print来耗尽stdout。因此,第二个stdout.read()不会对f.write产生任何影响