2024-05-16 00:25:50 发布
网友
我试图用以下命令管道输出iostat、mongostat等实用程序的输出:
$ iostat -d 1 | ./script.py
其中我使用的代码:
我看到它挂起了,并且没有将每一行打印到控制台。 如果我运行时不带标志每隔一秒重复一次“-d1”,而输出只发生一次,则脚本将按预期运行。在
$iostat |/脚本.py在
正在缓冲数据,您可以在sys.stdout.readline上调用iter:
sys.stdout.readline
iter
import sys for line in iter(sys.stdin.readline,""): print line
单独运行iostat只输出几行,iostat -d 1连续循环,因此数据得到缓冲。在
iostat
iostat -d 1
正在缓冲数据,您可以在
sys.stdout.readline
上调用iter
:单独运行
iostat
只输出几行,iostat -d 1
连续循环,因此数据得到缓冲。在相关问题 更多 >
编程相关推荐