管道iostat d1到python标准输入

2024-05-16 00:25:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用以下命令管道输出iostat、mongostat等实用程序的输出:

$ iostat -d 1 | ./script.py

其中我使用的代码:

^{pr2}$

我看到它挂起了,并且没有将每一行打印到控制台。 如果我运行时不带标志每隔一秒重复一次“-d1”,而输出只发生一次,则脚本将按预期运行。在

$iostat |/脚本.py在


Tags: 代码py命令实用程序脚本管道标志script
1条回答
网友
1楼 · 发布于 2024-05-16 00:25:50

正在缓冲数据,您可以在sys.stdout.readline上调用iter

import sys
for line in iter(sys.stdin.readline,""):
    print line

单独运行iostat只输出几行,iostat -d 1连续循环,因此数据得到缓冲。在

相关问题 更多 >