unix / bash中是否有费率计算器实用程序?

时间:2014-05-19 22:52:02

标签: bash unix command tail rate

我正在寻找一种类似于

的工具

tail -f /var/log/some.log | grep EVENT1 |rate

继续显示事件的比率。

2 个答案:

答案 0 :(得分:5)

tail -f /var/log/some.log | grep --line-buffered EVENT1 | pv -l > /dev/null

pv is a pipe monitor,输出stderr的统计信息; -l将测量行而不是字节。

您需要在--line-buffered电话上使用grep,以便它不会缓冲较大的块,或者对于一般情况,您可以使用stdbuf来调整缓冲

答案 1 :(得分:1)

假设你的意思是事件/秒:

while read line; do echo -n "$(grep -c EVENT1 <<<"$line")"; done | pv >/dev/null

这使用pv,这是一个非常简单的实用程序。 sudo apt-get install pv对大多数的歧视(或yum -i等)

输入,当输入是例如(while true; do echo yes; sleep .1; done)

218B 0:00:22 [9,88B/s] [    <=>       ]

使用的技术是用输出中的单个字节替换每个匹配的行(即'1'),并且只测量以每秒字节为单位的输出带宽:)