【发布时间】:2011-08-10 19:06:28
【问题描述】:
我想启动一个子进程并读取它的 stderr,但到目前为止,我无法使用 subprocess.Popen 读取任何内容,甚至 stdout。我正在尝试使用 subprocess.communicate() 从标准输出和标准错误中读取。我就是这样做的:
import subprocess
p = subprocess.Popen('ls')
s = p.communicate()
print s
这给了我输出(无,无)。我认为这对适用于标准输入和标准错误。是这样吗?无论如何,如何从以 subprocess.Popen 开始的进程中读取 stdout 和 stderr?
【问题讨论】:
-
本子流程模块指南有一个部分可能会有所帮助:doughellmann.com/PyMOTW/subprocess/#working-with-pipes-directly
标签: python subprocess