MWCodebymw.de ↗
Terminal

Im ganzen Projekt suchen mit grep -rn (und warum ripgrep schneller ist)

„Wo steht dieser Text nochmal?" – mit grep -rn durchsuchst du in Sekunden dein ganzes Projekt inklusive Zeilennummern. Und mit ripgrep (rg) geht es noch schneller, weil es .gitignore automatisch beachtet.

Bevor ich in irgendeiner IDE herumklicke, suche ich im Terminal. grep findet Text in Dateien – rekursiv durch alle Unterordner, mit Zeilennummer, in Sekunden.

Der Alltags-Befehl

grep -rn "TODO" .
  • -r – rekursiv, also auch alle Unterordner
  • -n – Zeilennummer mit ausgeben (damit springst du direkt hin)
  • . – im aktuellen Ordner suchen

Ein paar Schalter, die ich ständig brauche:

grep -rni "passwort" .            # -i: Groß-/Kleinschreibung egal
grep -rn --include="*.php" "TODO" .   # nur in PHP-Dateien
grep -rn "fixme" . --exclude-dir=node_modules   # Müll-Ordner überspringen

Noch schneller: ripgrep (rg)

Auf größeren Projekten nutze ich ripgrep. Es ist deutlich schneller und – der eigentliche Clou – es beachtet automatisch deine .gitignore. Du durchsuchst also nie versehentlich node_modules, vendor oder Build-Ordner.

rg "TODO"                 # rekursiv, mit Zeilennummern, .gitignore-aware – alles Standard
rg -i "passwort"          # ohne Groß-/Kleinschreibung
rg "fetch\(" -t js        # nur in JavaScript-Dateien (-t js)

Installieren kannst du es unter Debian/Ubuntu mit sudo apt install ripgrep, auf dem Mac mit brew install ripgrep.

Mein Tipp: grep -rn kennt jeder Server, das ist dein verlässliches Werkzeug überall. rg ist dein schnelles Werkzeug auf dem eigenen Rechner. Beides zusammen deckt 99 % ab.

Sauberes Arbeiten im Terminal spart jeden Tag Zeit. Mehr Snippets wie dieses findest du auf code.bymw.de.

#grep#ripgrep#Suche#Terminal#Dateien

Du brauchst mehr als ein Snippet?

Ich entwickle Android-Apps in Kotlin und moderne Websites für Selbstständige und kleine Unternehmen — von der ersten Idee bis zum Release.

Projekt anfragen →