我正在使用Popen在脚本中调用命令。使用“ ls”作为该命令的代理:
command = 'ls'
p = subprocess.Popen(command)
(results, errors) = p.communicate()
即使results
打印到errors
,None
和ls
均为stdout
。
似乎在调用p.communicate()
之前,该命令正在输出并终止。
但这不是应该等待communicate
完成的过程吗?如果没有,我如何阻止该进程以便提取输出?