timeout 5s dd if=/dev/random | pv -r > /dev/null
[ 505kiB/s]
费率行的输出在我的五秒钟超时过程中被“更新”。我试过了,但是不起作用(日志为空):
timeout 5s dd if=/dev/random | pv -r > /dev/null 2> rates.log
我相信这与stderr输出中的回车]有关系,但是一个小时后,我陷入了困境。理想情况下,每次pv打印新值时,我的日志文件都会有多行:
[ 505kiB/s] [ 498kiB/s] [ 542kiB/s] [ 513kiB/s] [ 509kiB/s]
更新:
要按照上述方式将内容保存到文件中,虽然我不确定为什么需要使用stdbuf(仅tr无效,如果没有stdbuf,文件将为空) :
timeout 5s dd if=/dev/random | pv -fr > /dev/null 2> >(stdbuf -oL tr '\r' '\n' > rates.log)
如何将pv的stderr输出打印到文件?例如:timeout 5s dd if = / dev / random | pv -r> / dev / null [505kiB / s]在我的五秒钟的过程中,费率行的输出被“更新” ...
来自man pv
: