如何在彼此之后在线上grep 2个相同的字符串

时间:2016-03-17 16:35:27

标签: grep lines

我想知道文本中是否有相似的行和彼此之后的行。例如,我想找出是否有任何行有" cccc"在eacother之中和之后。

aaaaaaaa
bbbbaaaa
ccccxxxx
ddddaaaa
eeeeaaaa
ccccxxxx   <---
ccccyyyy   <---
ddddaaaa
eeeeaaaa

所以我应该只打印双cccc ****行。 我试过像:

 grep "cccc" -A1 file.txt

但得到了所有&#34; cccc *&#34;线。

我知道的简单问题...... 另一个例子: 搜索&#34;芬兰&#34;的重复项:

Iceland
Germany
FinlandsIsNiceButNoMatch
France
FinlandWillMatchTHisTime    <---
FinlandWillAlsoMatch        <---
Hungary

1 个答案:

答案 0 :(得分:0)

如果它们都以至少3个相同的字母开头,则匹配两行:

grep -Pzo "([a-zA-Z]{3}).*\n\1.*" file.txt