grep liste chaque fichier une fois


8

Je recherche du texte dans des fichiers, mais trois sont beaucoup de fichiers et le texte recherché apparaît plusieurs fois dans un fichier, comment puis-je recevoir une liste de fichiers contenant du texte recherché avec chaque fichier répertorié une seule fois?

Réponses:


15
grep -l xyz file*

où xyz est le modèle de recherche et fichier * est la liste des fichiers à rechercher dans


1

grep -l LIST PATTERNest la voie à suivre. Alternativement, on pourrait utiliser xargspour faire la même chose:

xargs grep "My Search Pattern"  < input.txt 

xargsest particulièrement utile lorsque vous souhaitez utiliser grepplusieurs noms de fichiers transmis depuis un tube, par exemple:

find ~/Documents ~/bin -print0 | xargs -0 grep 'Search Term'
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.