web-dev-qa-db-fra.com

omettre les noms de fichiers dans grep

Je suis en train de tracer une chaîne de plusieurs fichiers, mais l'effet secondaire indésirable est le nom du fichier qui précède 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 le moment en utilisant cat lpNet * | grep lp je me demande s'il existe un chemin plus efficace pour avoir le même effet

15
j0h

Le comportement par défaut consiste à imprimer le nom du fichier lorsque plusieurs arguments de fichier lui sont attribués. Pour le supprimer, vous pouvez ajouter l'option -h ou --no-filename.

Dans la section Output Line Prefix Control de la page de manuel de 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.
25
steeldriver