How to find patterns across multiple lines using grep?

后端 未结 26 2075
你的背包
你的背包 2020-11-22 04:14

I want to find files that have \"abc\" AND \"efg\" in that order, and those two strings are on different lines in that file. Eg: a file with content:

blah bl         


        
26条回答
  •  Happy的楠姐
    2020-11-22 04:39

    you can use grep incase you are not keen in the sequence of the pattern.

    grep -l "pattern1" filepattern*.* | xargs grep "pattern2"
    

    example

    grep -l "vector" *.cpp | xargs grep "map"
    

    grep -l will find all the files which matches the first pattern, and xargs will grep for the second pattern. Hope this helps.

提交回复
热议问题