Mit einem Linux-Befehl könnt ihr ganz einfach nach bestimmten Text in Dateien suchen und die Dateien mit Verzeichnispfad anzeigen lassen. Wir zeigen, wie das geht.

Linux: find text in files

„Find text in files“ wird in Linux mit dem mächtigen Befehl grep erledigt:

Befehl: grep -rnwi '/Pfad/zu/Ordner/' -e 'Textschnipsel'

Bilderstrecke starten(13 Bilder)
Top 12 der aktuell beliebtesten Linux-Distributionen im Vergleich

Ausgabe: Pfad zur Datei : Zeilennummer : Textzeile

  • -r bedeutet rekursiv.
  • -n zeigt die Zeile der Datei an, wo der Textschnipsel gefunden wurde.
  • -w bedeutet, dass der Textschnipsel als Ganzes übereinstimmen muss. Wer nach „Haus“ mit -w sucht, findet nicht „Haustür“.
  • -i bedeutet, dass nicht zwischen Groß- und Kleinschreibung unterschieden wird.
  • -l kann optional ergänzt werden, um nur den Dateipfad auzugeben, in welcher der Textschnipsel vorkommt.

Beispiele:

Sucht im Home-Verzeichnis und Unterordnern des Nutzers „zina“nach Dateien, die genau das Wort „lorem“ enthalten:

grep -rnwi '/home/zina/' -e 'lorem'

Beachte: Findet „lorem“ (klein geschrieben) und „Lorem“ (groß geschrieben). Für Unterscheidung zwischen Groß- und Kleinschreibung müsst ihr den Befehl ohne -i nutzen:  grep -rnw '/home/zina/' -e 'lorem'.

Nur nach Dateien mit Dateiendung .c oder .h suchen (--inlcude):

grep --include=\*.{c,h} -rnw '/home/zina/' -e "lorem"

Nur nach Dateien ohne Dateiendung .o suchen (--exclude):

grep --exclude=*.o -rnw '/home/zina/' -e "lorem"

Bei der Suche die Verzeichnisse „dir1“, „dir2“ und alle, die auf „test“ enden, ausschließen:

grep --exclude-dir={dir1,dir2,*test} -rnw '/home/zina/' -e "lorem"

Welches Betriebssystem findest du am besten? (Desktop)

Du willst keine News rund um Technik, Games und Popkultur mehr verpassen? Keine aktuellen Tests und Guides? Dann folge uns auf Facebook (GIGA Tech, GIGA Games) oder Twitter (GIGA Tech, GIGA Games).