gpt4 book ai didi

python - 将 SSH 输出从 Cisco 路由器打印到文本文件

转载 作者:行者123 更新时间:2023-11-30 23:30:13 25 4
gpt4 key购买 nike

我是 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()

最佳答案

stdout.read() 将读取内容并将文件指针向前移动。因此,后续调用将无法再次读取内容。因此,如果您想打印内容并将其写入文件,您应该先将其存储在变量中,然后打印并写入。

<小时/>

Instead of mentioning the IP address directly on the code, is it possible for me to fetch it from list of IP addresses (mentioned line by line) in a text file?

您可以像这样从文件中读取行:

with open('filename') as f:
for line in f:
# Each line will be iterated; so you could call a function here
# that does the connection via SSH
print(line)

关于python - 将 SSH 输出从 Cisco 路由器打印到文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20766274/

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