我在 wget
之后有一个 grep -o '100%'
管道,所以我只收到 wget
完成下载的通知, 屏幕上没有无用的信息。但是每个 100%
都打印在一个新行上,我不喜欢这种泛滥!那么,有没有办法通过在 grep
之后管道 tr
将换行符 tr
到空格?我得到的只是没有结果,每次我尝试...
最佳答案
你最终会得到输出,但一次完成。这是由于缓冲。
GNU grep
有一个 --line-buffered
来避免输出缓冲。 tr
没有明显的方法来关闭输入缓冲,因此您可以改用 awk
:
wget -r -l 1 http://stackoverflow.com/ 2>&1 |
grep --line-buffered -o '100%' | awk '{printf("%s ", $0);}'
100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100%
关于linux - BASH - tr grep 结果换行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38860821/