找到没有字符串或有字符串但已注释掉的文件

时间:2016-07-20 18:07:43

标签: bash grep

下面是我正在寻找没有单词“DEF”的文件或者如果存在则被注释掉的文件的示例文件。

cat text.txt_1
ABC
DEF
GHI

cat text.txt_2
ABC
#DEF
GHI

cat text.txt_3
ABC
GHI

我正在尝试做这样的事情grep -Lr "DEF" . || grep -iwr "DEF" . | grep "^#",但它无法正常工作

提前致谢!

1 个答案:

答案 0 :(得分:1)

如果您有gnu grep,请使用:

grep -zvlr '^[^#]*DEF'

否则,您可以将awkfind

一起使用
find . -type f -name 'text.*' -exec awk '/^[^#]*DEF/{p=1} END{if (!p) print FILENAME}' {} \;