¿Cómo encontrar archivos que no tienen contenido específico?

¿Cómo encontrar archivos que no tienen contenido específico?

Tengo muchos archivos que ya tienen registros SPF definidos.

grep -i v=spf *.db

/var/named/dominio.com.db

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

Y desea encontrar todos los archivos sin registros SPF. ¿Algunas pistas?

Respuesta1

GNU grep tiene la -Lopción, lo contrario de -l. Enumera archivos sin coincidencias. entonces puedes hacer

grep -iL v=spf *.db

Con un grep más tradicional, puedes hacer un -cconteo y luego seleccionar los que tienen un conteo de 0 coincidencias:

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

información relacionada