grep-Ausgabe, um nur übereinstimmende Dateien anzuzeigen

215

Mit welcher Option kann grepich nur die übereinstimmende Datei und nicht die Zeile in einer Datei drucken, die den Kriterien entspricht?

paultop6
quelle
Normalerweise verwende ich diesen Befehl nur, wenn ich nach Dateien suche, die eine bestimmte Funktion oder Methode aufrufen.
Gearoid Murphy
Anwendungsfall (foo-> bar in allen Dateien rekursiv suchen und ersetzen): sed -i 's / foo / bar /' `grep -lR 'foo'`
user323094

Antworten:

43

Sie können den Unix-ähnlichen -lSchalter - normalerweise knapp und kryptisch - oder den entsprechenden Schalter verwenden --files-with-matches- länger und besser lesbar.

Die Ausgabe von grep --helpist nicht leicht zu lesen, aber es ist da:

-l, --files-with-matches  print only names of FILEs containing matches
Iain Samuel McLean Elder
quelle
28

-l (das ist ein Kleinbuchstabe L).

Mark Ransom
quelle
0

Denken Sie auch an eine Sache. Sehr wichtig
Sie müssen den Befehl so etwas angeben, um genauer zu sein
grep -l "pattern" *

Vinod Kumar
quelle
In der Frage wurde explizit eine Option "Was ist die Option für grep that [...]" gestellt . Diese Antwort fügt den vorhandenen keinen Wert hinzu.
YSC