代码如下(在python 2.7提示符下)
import subprocess as sp
a = sp.Popen(['bash', '-c', 'ssh [REDACTED] cat text.txt'],
stdout=sp.PIPE, stderr=sp.PIPE)
print(a.communicate()[0])
我希望这个程序可以打印整个“text.txt”文件,但是它缺少最后几行。
文件text.txt位于远程服务器中,我认为这是它的要点。如果我检索文件然后在本地执行subprocess.Popen,它会按预期工作。
为什么会发生这种情况?如何解决?
注意:如果我使用check_output
,结果是一样的