![我正在尝试 grep 假设多行作为 unix 中的单行](https://linux22.com/image/218130/%E6%88%91%E6%AD%A3%E5%9C%A8%E5%B0%9D%E8%AF%95%20grep%20%E5%81%87%E8%AE%BE%E5%A4%9A%E8%A1%8C%E4%BD%9C%E4%B8%BA%20unix%20%E4%B8%AD%E7%9A%84%E5%8D%95%E8%A1%8C.png)
abc def \
ghi \
jkl mno pqr \
stu vwx yz
我的 grep 命令如何将上述内容假定为单行并 grep 'ghi' 并返回如下
abc def ghi jkl mno pqr stu vwx yz
答案1
使用 GNU grep
:
$ grep -Eo '[a-z]+' file | paste -sd ' ' -
abc def ghi jkl mno pqr stu vwx yz
或常规grep
:
$ grep -o '[a-z]\{1,\}' file | paste -sd ' ' -
abc def ghi jkl mno pqr stu vwx yz
和Perl
:
$ perl -0777 -nE 'say join " ", /\w+/g' file
abc def ghi jkl mno pqr stu vwx yz