У меня есть набор файлов, которые содержат некоторую информацию.
Меня интересует подмножество файлов, которыенетсодержат определенный шаблон вообще.
Например
cat file.txt
foo
bar
trivial information
some customer data
скажем, меня интересуют файлы, в которых нет строки «тривиальная информация».
Как мне это сделать?
Если есть:
grep -v ‘trivial information’
это не сработает, потому что остальные строки в файле соответствуют этому инвертированному поиску, поэтому file.txt
в результате окажется .
Так как мне сделать инвертированное соответствие для всего файла, а не построчно?
решение1
Вы ищете -L
флаг:
grep -L 'trivial information' *
От man grep
:
-L, --files-without-match
Подавить нормальный вывод; вместо этого вывести имя каждого входного файла, из которого обычно не печатается вывод. Сканирование остановится при первом совпадении.