管道grep列出文件

时间:2017-10-24 09:29:20

标签: linux grep

文件中的示例行:

Populating response|boy|sessionType=Random

另一个文件中的示例行:

Populating response|boyhood|sessionType=Random

目录中有几个文件具有相似的输出 我需要列出所有包含男孩(而不是童年)行的文件

如何使用grep(或任何替代方法)列出文件。

grep -l "Populating response.*boy" *.txt | grep -v "boyhood"显然无效

3 个答案:

答案 0 :(得分:0)

grep -inIEr 'boy' *.txt | grep -v hood

*.txt替换为文件类型

答案 1 :(得分:0)

使用grep -lF '|boy|' *

-l仅列出匹配的文件 -F搜索文字字符串|boy| *搜索当前目录中的所有文件。

答案 2 :(得分:0)

您可以使用:

grep "boyhood" *.txt -vl | xargs grep "Populating response.*boy" -l

首先通过消除"少年时代来过滤"文件并仅保留文件名。

然后,对于每个结果,它将再次解析它并在匹配时打印它们。