我使用python' s subprocess
运行python脚本(让我们称之为script2.py
),该脚本正在向{{1}打印信息}使用stdout
重定向。问题是PIPE
会停止打印信息,但它会在后台继续运行。我想要的是检测该状态(什么都没有写入script2.py
)。有没有办法这样做?
我可以通过以下方式模拟此行为:
script2.py
stdout
接下来的500次迭代什么都不会发生,这是我需要检测的内容才能重新运行脚本。
答案 0 :(得分:0)
Popen.stdout 如果stdout参数是PIPE,则此属性是一个文件对象,它提供子进程的输出。否则,它是无。
因此,在考虑完成流程初始输出之前,您可能需要决定等待的时间。所以 proc.stdout.readline()然后睡眠(1)然后冲洗并重复。