grep 对文件进行反向匹配,而不是逐行匹配

Jim*_*Jim 8 linux grep files

我有一组包含一些信息的文件。
我对根本包含特定模式的文件子集感兴趣。
例如

cat file.txt  
foo  
bar  
trivial information
some customer data   
Run Code Online (Sandbox Code Playgroud)

假设我对没有“琐碎信息”行的文件感兴趣。
我该怎么做?
如果我做:

grep -v ‘trivial information’   
Run Code Online (Sandbox Code Playgroud)

它不起作用,因为文件中的其余行与此反向搜索匹配,因此最终file.txt会出现在结果中。
那么如何对整个文件进行反向匹配而不是逐行匹配呢?

pfn*_*sel 17

您正在寻找-L标志:

grep -L 'trivial information' *
Run Code Online (Sandbox Code Playgroud)

来自man grep

-L, --files-without-match

抑制正常输出;而是打印通常不会打印输出的每个输入文件的名称。扫描将在第一场比赛中停止。

  • 我希望我将来记得那个开关,我已经完成了 `for f in ... grep $p $f >/dev/null || 回声 $f` 几次... (2认同)