Tengo un conjunto de archivos que contienen cierta información.
Estoy interesado en el subconjunto de archivos que hacennocontener un patrón específico.
P.ej
cat file.txt
foo
bar
trivial information
some customer data
digamos que estoy interesado en archivos que no tienen la línea 'información trivial'.
¿Como podría hacerlo?
Si lo hago:
grep -v ‘trivial information’
no funcionará porque el resto de las líneas del archivo coinciden con esta búsqueda invertida, por lo que file.txt
terminará en el resultado.
Entonces, ¿cómo hago una coincidencia inversa en todo el archivo y no línea por línea?
Respuesta1
Estás buscando la -L
bandera:
grep -L 'trivial information' *
De man grep
:
-L, --archivos-sin-coincidencia
Suprimir la producción normal; en su lugar, imprima el nombre de cada archivo de entrada del cual normalmente no se habría impreso ninguna salida. El escaneo se detendrá en el primer partido.