it-swarm-es.com

lista grep cada archivo una vez

Estoy buscando texto en archivos, pero tres son muchos archivos y el texto buscado aparece varias veces en un archivo, ¿cómo puedo recibir una lista de archivos que contiene texto buscado con cada archivo enumerado solo una vez?

8
Guest1624
grep -l xyz file*

donde xyz es el patrón de búsqueda, y el archivo * es la lista de archivos a buscar

15
Guru

grep -l LIST PATTERN es el camino a seguir. Alternativamente, uno podría usar xargs para hacer lo mismo:

xargs grep "My Search Pattern"  < input.txt 

xargs es particularmente útil cuando desea utilizar grep en varios nombres de archivo pasados ​​de una tubería, por ejemplo:

find ~/Documents ~/bin -print0 | xargs -0 grep 'Search Term'
1