Como encontrar arquivos que não possuem conteúdo específico?

3

Eu tenho muitos arquivos que já possuem registros SPF definidos

grep -i v=spf *.db

/var/named/domain.com.db

domain.com.  14400   IN      TXT     "v=spf1 +a +mx +ip4:XXX.XXX.XXX.XXX ?all"

E deseja encontrar todos os arquivos sem registros SPF. Algumas dicas?

    
por Gabriel Santos 27.12.2013 / 21:09

1 resposta

6

O GNU grep tem a opção -L , o inverso de -l . Ele lista arquivos sem correspondências. Então você pode fazer

grep -iL v=spf *.db

Com um grep mais tradicional, você pode fazer um -c count e, em seguida, selecionar aqueles que têm uma contagem de 0 correspondências:

grep -ic v=spf *.db | grep ':0$' | sed 's/:0$//'
    
por 27.12.2013 / 21:12