omettre les noms de fichiers dans grep

18

J'attrape une chaîne de plusieurs fichiers, mais le seul effet secondaire indésirable est le nom de fichier précédant la sortie. Comment puis-je supprimer les sorties de nom de fichier en utilisant uniquement 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. 

J'ai résolu le problème pour l'instant en utilisant cat lpNet * | grep lp Je me demande simplement s'il existe un chemin plus efficace pour avoir le même effet

j0h
la source

Réponses:

31

Le comportement par défaut consiste à imprimer le nom de fichier lorsque plusieurs arguments de fichier sont fournis - pour supprimer cela, vous pouvez ajouter l' -hoption ou --no-filename

Dans la Output Line Prefix Controlsection de la page de manuel 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.
tournevis
la source