omitir nombres de archivo en grep


18

Estoy agrupando una cadena de varios archivos, pero el único efecto secundario no deseado es el nombre de archivo que precede a la salida. ¿Cómo puedo suprimir las salidas de nombre de archivo usando solo grep?

  $ grep -i lp lpNet* 
    lpNet:This was printed via the internet using the lp command.
    lpNet:I believe lp doesnt care what the device is. 
    lpNet1:This was printed via the internet using the lp command.
    lpNet1:I believe lp doesnt care what the device is. 
    lpNet2:This was printed via the internet using the lp command.
    lpNet2:I believe lp doesnt care what the device is. 
    lpNet3:This was printed via the internet using the lp command.
    lpNet3:I believe lp doesnt care what the device is. 

He resuelto el problema por ahora usando cat lpNet * | grep lp Me pregunto si hay un camino más eficiente para tener el mismo efecto.

Respuestas:


31

El comportamiento predeterminado es imprimir el nombre del archivo cuando se le dan múltiples argumentos de archivo; para suprimir esto, puede agregar la -hopción o --no-filename

De la Output Line Prefix Controlsección de la página del manual grep:

   -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.
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.