Estoy tratando de encontrar archivos que contengan una palabra específica usando grep
. Hay muchos archivos en el directorio (> 500)
Comando corro
$ grep 'delete' *
Salida
validate_data_stage1:0
validate_data_stage2:0
validate_data_stage3:0
validate_data_stage4:0
validate_data_stage5:0
validate_input_stage1:0
validate_input_stage2:0
validate_input_stage3:0
validate_input_stage4:0
.... and hundred of such lines
Estos son los archivos que no contienen la coincidencia dada. Quiero evitar que esas líneas se muestren en stdout. Sé de -q
switch, pero eso suprimiría la salida completa, que no quiero.
¿Cómo puedo hacer eso?
grep 'delete' * -R
, pero no creo que -R
esté causando ningún problema. Y sí, lo que normalmente no imprime las no coincidentes, pero no está seguro de lo que es el caso aquí ...
grep -- 'delete' *
(agregué --
) y funcionó como se esperaba. Quitarlo --
está conduciendo a la pantalla anterior.
-ci
. Gracias por resolver el problema. Puede publicar este escenario como respuesta.
grep
no se deben imprimir los nombres de los archivos que no coinciden. En realidad, parece quegrep
considera que una línea con el contenido0
coincide. ¿Puedes publicar el patrón de búsqueda exacto que estás utilizando?