gpt4 book ai didi

python - 在 Python 中使用子进程从进程中无缓冲读取

转载 作者:IT老高 更新时间:2023-10-28 20:39:05 26 4
gpt4 key购买 nike

我正在尝试从产生长时间且耗时的输出的进程中读取。但是,我想捕捉它的输出以及何时。但是使用类似下面的东西似乎在缓冲命令的输出,所以我最终一次得到了输出行:

p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, bufsize=0)
for line in p.stdout:
print line

我正在 MacOS 10.5 上尝试这个

最佳答案

文件迭代器正在做一些内部缓冲on its own .试试这个:

line = p.stdout.readline()
while line:
print line
line = p.stdout.readline()

您还需要确保您正在运行的进程实际上经常刷新其输出缓冲区。

关于python - 在 Python 中使用子进程从进程中无缓冲读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1183643/

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