
Ich suche in Dateien nach Text, aber drei sind eine Menge, und der gesuchte Text kommt in einer Datei mehrmals vor. Wie kann ich eine Dateiliste erhalten, die den gesuchten Text enthält und in der jede Datei nur einmal aufgeführt ist?
Antwort1
grep -l xyz file*
wobei xyz das Suchmuster und file* die Liste der zu durchsuchenden Dateien ist
Antwort2
grep -l LIST PATTERN
ist der richtige Weg. Alternativ könnte man xargs
dasselbe tun mit:
xargs grep "My Search Pattern" < input.txt
xargs
ist besonders nützlich, wenn Sie es auf mehrere Dateinamen anwenden möchten, grep
die von einer Pipe übergeben werden, zum Beispiel:
find ~/Documents ~/bin -print0 | xargs -0 grep 'Search Term'