以下示例 Python 程序打印更新进度条。
progress.py :
import sys
import time
for i in range(100):
sys.stdout.write("\r%3d%%" % (i + 1))
sys.stdout.flush()
time.sleep(.02)
sys.stdout.write("\n")
但是,当使用以下 Makefile 通过 GNU Make(来自 Ubuntu 上的 Bash)运行它时,输出似乎被缓冲,直到遇到换行符,因此进度更新不可见。为了确定,未缓冲的输出被指定给 Python。
all :
python -u progress.py
有没有办法让部分行输出在使用 make 时立即可见?