无法通过`stdin`读取`tail -F`

时间:2012-02-27 08:47:40

标签: python

我正在尝试使用以下脚本parse.py解析不断增长的csv文件:

import csv
import sys

reader = csv.reader(sys.stdin)
for row in reader:
    print row

相应的命令行是tail -F log | python parse.py

然后,我尝试使用logecho "something" >> log添加一些行。

但是parse.py什么都不打印。

我的剧本出了什么问题?

1 个答案:

答案 0 :(得分:2)

您遇到的问题是您添加到日志文件中的内容正在被缓冲,而不会传递给管道中的其他命令。

有关详细信息,请查看how big is the pipe buffer