grep问题-尝试在包含2个以上特定字符的文本文件中显示行

grep问题-尝试在包含2个以上特定字符的文本文件中显示行,grep,Grep,得到一个类似于: $ cat file1.txt 123456 1234n5678nn 12n4567890123 123n56n89n1n 我正在努力: grep -E 'n{3,}' file1.txt 仅获取其中出现两次以上n的行(不必是连续的),但这不起作用。我想要的输出是: 1234n5678nn 123n56n89n1n 请注意,我只能使用grep或egrep执行此操作-不能使用sed或awk您可以这样做: grep -E '(n.*){3,}' file1.txt 或者使用

得到一个类似于:

$ cat file1.txt
123456
1234n5678nn
12n4567890123
123n56n89n1n
我正在努力:

grep -E 'n{3,}' file1.txt
仅获取其中出现两次以上
n
的行(不必是连续的),但这不起作用。我想要的输出是:

1234n5678nn
123n56n89n1n

请注意,我只能使用
grep
egrep
执行此操作-不能使用
sed
awk
您可以这样做:

grep -E '(n.*){3,}' file1.txt
或者使用您已经测试过并运行良好的方法:

grep -E 'n.*n.*n' file1.txt

一定有更好的办法,但我能想到的办法是
grep-E“n.*n.*n”file1.txt
。现在:)关于有趣的部分-我如何标记这个问题的答案;谢谢@Rfroes87应该将他的评论复制到回答部分,然后你接受它。