grep sin mostrar ruta / archivo: línea
¿Cómo grep y solo devuelve la línea correspondiente? es decir, la ruta/nombre de archivo se omite de los resultados.
En este caso quiero mirar en todos .archivos de barras en el directorio actual, buscando el término FOO
find . -name '*.bar' -exec grep -Hn FOO {} \;
3 answers
No es necesario find
. Si solo está buscando un patrón dentro de un directorio específico, esto debería ser suficiente:
grep -hn FOO /your/path/*.bar
Donde -h
es el parámetro para ocultar el nombre del archivo, como desde man grep
:
-h, no no-filename
Suprime el prefijo de los nombres de archivo en la salida. Este es el valor predeterminado cuando solo hay un archivo (o solo entrada estándar) para buscar.
Tenga en cuenta que estaba usando
-H, with with-filename
Imprima el nombre del archivo para cada coincidencia. Este es el valor predeterminado cuando hay más de un archivo para buscar.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-05-03 06:04:33
Simplemente reemplace -H
por -h
. Compruebe man grep
para más detalles sobre las opciones
find . -name '*.bar' -exec grep -hn FOO {} \;
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-10-16 15:05:08
No es realmente tan difícil de buscar en la página de manual, ¿verdad?
-h, --no-filename
Suppress the prefixing of file names on output. This is the default when there
is only one file (or only standard input) to search.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-06-18 12:33:42