我正在努力使我的代码尽可能高效和简单。我想把我的pexpect命令变成一行:
当前命令(简化):
import pexpect
...
session=pexpect.spawn( 'ssh %s@%s'%(un,ip), timeout)
session.expect(prompt, timeout)
session.sendline('ls')
session.expect(prompt)
print session.before
我想在我的ssh命令中执行此操作但是我返回一个pexpect对象,有没有办法只返回输出字符串?
import pexpect
...
print str(pexpect.spawn( 'ssh %s@%s ls'%(un,ip), timeout))
是否有可能将上述代码更改为有效?
我必须使用pexpect或标准python 2.4,而不是paramiko :(
答案 0 :(得分:1)
你想要read() method:
p = pexpect.spawn('ssh %s@%s ls'%(un,ip), timeout)
print(p.read())