omitir nomes de arquivos no grep

16

Estou recebendo uma string de vários arquivos, mas o efeito colateral indesejado é o nome do arquivo que antecede a saída. Como posso suprimir as saídas do nome do arquivo usando apenas 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. 

Eu resolvi o problema por enquanto usando cat lpNet * | grep lp Estou me perguntando se existe um caminho mais eficiente para ter o mesmo efeito

j0h
fonte

Respostas:

29

O comportamento padrão é imprimir o nome do arquivo quando houver vários argumentos de arquivo - para suprimir isso, você pode adicionar a -hopção --no-filename

Na Output Line Prefix Controlseção da página do 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.
chave de aço
fonte