stdin,stdout,stramr在paramiko

问题描述 投票:-3回答:1
stdin, stdout, stderr = client1.exec_command('show version')
stdin, stdout, stderr = client1.exec_command('show interfaces ge-0/0/10')
stdin, stdout, stderr = client1.exec_command('show chassis routing-engine')
print stdout.read()

上面的脚本仅为最后一个命令('show chassis routing-engine')提供输出。如果我没有错,上面的2行输出被最后一个命令覆盖。但是如何使用一条打印线打印所有3个命令的输出?

python paramiko
1个回答
2
投票

您必须将输出存储在某处。喜欢:

stdout_outputs = []

stdin, stdout, stderr = client1.exec_command('show version')
stdout_outputs.append(stdout.read())
stdin, stdout, stderr = client1.exec_command('show interfaces ge-0/0/10')
stdout_outputs.append(stdout.read())
stdin, stdout, stderr = client1.exec_command('show chassis routing-engine')
stdout_outputs.append(stdout.read())

print '; '.join(stdout_outputs)
© www.soinside.com 2019 - 2024. All rights reserved.