实时打印语句我有一个Python脚本,看起来像这样:利用发球得到蟒蛇
$ python my.py | tee my_file.txt
但是:
for item in collection:
print "what up"
#do complicated stuff that takes a long time.
在bash,我通过执行以下操作运行该脚本,所有我在bash中看到的都是空白的行,直到程序结束。然后,所有的打印声明都集中在一起。
这是三通的预期操作吗?我可以使用T恤实时查看输出吗?
这将是与Python的问题。这是故意的。它只是检测到输出不会到达终端,所以它是缓冲。你需要关闭缓冲。如何做到这一点可能更适合stackexchange.com – Patrick 2014-10-09 02:22:20
可能是这样的帮助:http://unix.stackexchange.com/questions/25372/turn-off-buffering-in-pipe – Ketan 2014-10-09 02:26:25
顶部做“'进口系统''并在打印语句下面的缩进行中做''sys.stdout.flush()'“ – Anthon 2014-10-09 04:20:52