2011-09-27 51 views
2

以下是我的驱动程序信息,需要使用ssh脚本来提取数据(固件版本),如下所示。SSH与Paramiko:无法读取数据

ncmdvstk:~ $ ssh [email protected] 
Password: 

MSM760 V. 5.3.6.18-01-9124 
(C) 2010 Hewlett-Packard Development Company, L.P. 

CLI> enable 
CLI# show system info 
[CPU info] [Mem in fo] 
Firmware Version: 5.3.6.18-01-9124   Load 1min:  0.34 Total RAM: 9 

这是我用来读取所有数据,程序首先在“数据”变量,这样以后我可以分裂ň获取信息,我需要,但在那里,因为没有数据它在打印数据进行打印:

ssh = paramiko.SSHClient() 
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 
ssh.connect('153.88.127.21', username='admin',password='catfish') 

stdin, stdout, stderr = ssh.exec_command("enable") 
stdin.write('show system info \n') 
data = stdout.read() 
print data 

请纠正我获取数据。

回答

0

您需要在stdin.write()之后添加对stdin.flush()的调用,否则您发送的输入将保持缓冲。