我想subprocess.Popen()在Windows中使用rsync.exe,并在Python中打印标准输出。
我的代码可以运行,但是直到文件传输完成后才能捕获进度!我想实时打印每个文件的进度。
因为我听说现在应该使用Python 3.1,所以它在处理IO方面应该更好。
import subprocess, time, os, sys
cmd = "rsync.exe -vaz -P source/ dest/"
p, line = True, 'start'
p = subprocess.Popen(cmd,
shell=True,
bufsize=64,
stdin=subprocess.PIPE,
stderr=subprocess.PIPE,
stdout=subprocess.PIPE)
for line in p.stdout:
print(">>> " + str(line.rstrip()))
p.stdout.flush()
一只斗牛犬
相关分类