grep jogo invertido no arquivo e não em uma linha por linha correspondente [duplicado]

4

Eu tenho um conjunto de arquivos que contém algumas informações.
Estou interessado no subconjunto de arquivos que não contêm um padrão específico.
Por exemplo.

cat file.txt  
foo  
bar  
trivial information
some customer data   

digamos que eu esteja interessado em arquivos que não tenham a linha "informações triviais". Como eu faria isso?
Se eu fizer:

grep -v ‘trivial information’   

não funcionará porque o restante das linhas no arquivo são correspondentes a essa pesquisa invertida, de modo que file.txt acabará no resultado.
Então, como eu faço uma partida invertida no arquivo inteiro e não linha por linha?

    
por Jim 14.04.2017 / 14:17

1 resposta

12

Você está procurando o sinalizador -L :

grep -L 'trivial information' *

De man grep :

-L, --files-without-match

Suppress normal output; instead print the name of each input file from which no output would normally have been printed. The scanning will stop on the first match.

    
por 14.04.2017 / 14:22