如何獲得管道的平均流速

如何獲得管道的平均流速

如果myfile隨著時間的推移而增加,我可以使用每秒的行數

tail -f | pv -lr > /dev/null

它給出的是瞬時速度,而不是平均速度。

如何獲得平均速度(即速度函數v(t)在監控時間內的積分)。

答案1

對於pv1.2.0(2010 年 12 月)及更高版本,它具有以下-a選項:

這裡有當前的和平均的,基於行的:

$ find / 2> /dev/null | pv -ral > /dev/null
[6.28k/s] [70.1k/s]

在 1.3.8(2012 年 10 月)及更新版本中,您也可以將-F/--format與 一起使用%a

$ find / 2> /dev/null | pv -lF 'current: %r, average: %a'  > /dev/null
current: [4.66k/s], average: [ 218k/s]

請注意,tail -f首先轉儲文件的最後 10 行。用於tail -n 0 -f file | pv -la避免平均速度計算中的偏差。

相關內容