为什么grep \ n匹配每一行

时间:2014-09-17 04:09:58

标签: bash grep

我发现grep $'xxx\nxxx' file,其中xxx可以是任何内容,打印file的每一行。我有点困惑。有没有人得到任何线索?感谢。

grep版本是“GNU grep 2.6.3”

1 个答案:

答案 0 :(得分:3)

它在grep版本2.12上尝试过,它似乎是一个功能,而不是一个错误。考虑一下文件:

$ cat >file
Jerry
Bob
Phil 
Pigpen

现在,试试grep

$ grep $'J.*y\nP.il' file
Jerry
Phil

似乎每行输入都被视为一个单独的正则表达式模式以匹配,并且模式是或者在一起。

请注意,空模式匹配所有内容:

$ grep $'J.*y\n' file
Jerry
Bob
Phil
Pigpen