你好我想读取命令的输出,它给出了输出条,如下面的输出
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%,但我想在中间读取它。 任何人都可以帮忙吗?
答案 0 :(得分:4)
您正在使用readline()
,但进度条全部打印在一行上,因此readline()
会一直等到进度条完全打印,就像发生换行时一样。尝试read(1)
一次获取一个角色。