python paramiko invoke_shell_Paramiko invoke_shell()返回命令文本而不是结果

问题:

错误ssh.exec_命令:在CLI中找到额外的参数,这不受支持,正在退出CLI会话。它是一个Cisco设备,只有有限的ssh功能/哑终端支持。在

似乎是解决办法:

我的代码:import paramiko

ssh = paramiko.SSHClient()

ssh.load_system_host_keys()

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh.connect('my host', username='admin', password='pass')

#stdin, stdout, stderr = ssh.exec_command("show version")

#print(stdout.readlines())

chan = ssh.invoke_shell()

chan.sendall('show version\r')

s = chan.recv(4096)

print s

ssh.close()

输出:

^{pr2}$

只有命令本身,没有返回值。如果我将脚本指向一个普通的linux机器并使用uptime或ifconfig,那么我仍然得到命令的文本输出而不是结果。在