0

您好,我想读取命令的输出,该输出提供如下所示的进度条输出

10% |****                       | 3:56 ETA

我尝试使用以下代码

import subprocess
import sys
proc = subprocess.Popen("command", shell=True, stdout=subprocess.PIPE)
while True:
    line = proc.stdout.readline()
    if not line:
        break
    split = line.rstrip()
    print line
    print "\n"
print "Done"

此代码在进度条完成到 100% 后读取输出,但我想在中间读取它。任何人都可以帮忙吗?

4

1 回答 1

4

您正在使用readline(),但进度条全部打印在一行上,因此readline()请等到进度条完全打印出来,因为那是发生换行符的时候。尝试一次read(1)获得一个角色。

于 2012-06-24T16:53:30.053 回答