Eu tenho um conjunto de arquivos que contém algumas informações.
Estou interessado no subconjunto de arquivos que fazemnãocontêm um padrão específico.
Por exemplo
cat file.txt
foo
bar
trivial information
some customer data
digamos que estou interessado em arquivos que não possuem a linha 'informações triviais'.
Como eu faria isso?
Se eu fizer:
grep -v ‘trivial information’
não funcionará porque o resto das linhas do arquivo correspondem a esta pesquisa invertida, então terminará file.txt
no resultado.
Então, como faço uma correspondência invertida em todo o arquivo e não linha por linha?
Responder1
Você está procurando a -L
bandeira:
grep -L 'trivial information' *
De man grep
:
-L, --files-sem correspondência
Suprimir a saída normal; em vez disso, imprima o nome de cada arquivo de entrada do qual normalmente nenhuma saída seria impressa. A varredura irá parar na primeira partida.