tr
似乎要缓冲其输入,以便该命令LongRunningCommand|tr \\n ,
仅在LongRunningCommand积累了几千字节的输入后才开始产生输出。
有没有一种方法可以强制tr
停止此缓冲,或者可以使用其他字符替换新行而不进行缓冲的任何其他命令?
PS我已经尝试了关闭管道中的缓冲但没有成功的前两个建议。
stdbuf -o0 fping -aAq -r2 -g 10.30.0.1 10.30.0.255 2>/dev/null | stdbuf -i0 tr \\n ,
fping -q
说“不显示每个探针的结果,而只显示最终摘要”,那么也许最后只写了一个长篇幅?
tr
。试试|stdbuf -i0 -o0 tr ...
stdbuf
对LongRunningCommand或对tr或对两者的申请都不同吗?