如果我运行命令 cat file | grep 模式
,我得到了很多行输出。您如何将所有行连接成一行,有效地将每个 "\n"
替换为 "\""
(以 "
结尾,后跟空格)?
cat 文件 | grep 模式 | xargs sed s/\n//g
不适合我。
最佳答案
使用 tr '\n' ' '
将所有换行符转换为空格:
$ grep pattern file | tr '\n' ' '
注意:grep
读取文件,cat
连接文件。不要 cat 文件 | grep
!
编辑:
tr
只能处理单个字符的翻译。您可以使用 awk
来更改输出记录分隔符,例如:
$ grep pattern file | awk '{print}' ORS='" '
这会改变:
one
two
three
到:
one" two" three"
https://stackoverflow.com/questions/15580144/