【发布时间】:2014-05-22 15:33:47
【问题描述】:
在 python 中,我试图通过 ssh 连接并一一播放多个命令。 此代码工作正常,输出打印到我的屏幕:
cmd = ['ssh', '-t', '-t', 'user@host']
p = subprocess.Popen(cmd, stdin=subprocess.PIPE)
p.stdin.write('pwd\n')
p.stdin.write('ls -l\n')
p.stdin.write('exit\n')
p.stdin.close()
我的问题是当我尝试获取字符串中的每个响应时。我已经尝试过了,但读取功能被阻塞:
cmd = ['ssh', '-t', '-t', 'user@host']
p = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
p.stdin.write('pwd\n')
st1 = p.stdout.read()
p.stdin.write('ls -l\n')
st2 = p.stdout.read()
p.stdin.close()
【问题讨论】: