gpt4 book ai didi

python - 无法从 subprocess.Popen 读取 stderr

转载 作者:太空宇宙 更新时间:2023-11-03 14:33:50 24 4
gpt4 key购买 nike

我想启动一个子进程并读取它的 stderr,但到目前为止,我无法使用 subprocess.Popen 读取任何内容,甚至是 stdout。我正在尝试使用 subprocess.communicate() 从 stdout 和 stderr 读取。这就是我所做的:

import subprocess
p = subprocess.Popen('ls')
s = p.communicate()
print s

这给了我输出(无,无)。我认为这对是用于 stdin 和 stderr 的。是这样吗?无论如何,我如何从以 subprocess.Popen 开始的进程中读取 stdout 和 stderr?

最佳答案

创建 Popen 对象时需要指定 stdout=subprocess.PIPE 和 stderr=subprocess.PIPE:

  p = subprocess.Popen('ls', stdout=subprocess.PIPE, stderr=subprocess.PIPE)

关于python - 无法从 subprocess.Popen 读取 stderr,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5752702/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com