我正在尝试使用以下命令来管理iostat,mongostat等实用程序的输出:
removes
我正在使用代码:
$ iostat -d 1 | ./script.py
我看到它挂起并且不会将每一行打印到控制台。 如果我在没有标志的情况下运行重复每秒'-d 1',其中输出只发生一次,则脚本的行为与预期一致。
$ iostat | ./script.py
答案 0 :(得分:2)
数据正在缓冲,您可以在iter
上致电sys.stdout.readline
:
import sys
for line in iter(sys.stdin.readline,""):
print line
在它上面运行iostat
只输出几行,iostat -d 1
循环,以便数据被缓冲。