ripgrep (rg) unter macOS, Linux und Windows installieren
rg auf drei Systemen installieren, erste Regex-Suche ausführen, .gitignore-Filter verstehen.
Für schnelle Code-Suche schlägt ripgrep (rg) grep -r im Alltag: .gitignore wird standardmäßig respektiert, parallel ist es schnell. Offizielle Installationswege auf macOS, Linux und Windows für Leser von hereink.
Die Suche lautet ripgrep installieren und mit Regex suchen. Am Ende läuft Ihr erstes rg im Projektroot, und Sie wissen, wie ignorierte Dateien ausfallen.
Was ripgrep löst
Weniger grep-Fallen
grep -r läuft in node_modules, dist und .git. rg liest standardmäßig .gitignore, .ignore und globale Regeln—besser für Symbole im Repo.
Regex ohne POSIX-Examen
Rust-Regex mit \d, Gruppen, Ankern. Literale, Case-Flags und Typfilter reichen für den Start.
Version im Terminal:
rg --version. Upstream:github.com/BurntSushi/ripgrep.
rg auf allen drei OS installieren
- 1macOS (Homebrew)
brew install ripgrep. Prüfen mitwhich rgundrg --version. - 2Linux (Distro)
Debian/Ubuntu:
sudo apt update && sudo apt install ripgrep. Fedora:sudo dnf install ripgrep. Arch:sudo pacman -S ripgrep. Alternativ tarball von GitHub Releases. - 3Windows
winget install BurntSushi.ripgrep.MSVCoder MSI. Scoop:scoop install ripgrep. Neues Terminal, dannrg --version. - 4Optional: Rust
cargo install ripgrepwenn Rust schon da ist.
Basis-Regex-Suche
rg "useState" src/
rg -i "error" .
rg "^function\s+\w+" --type js
rg -l "TODO" .
rg -n -C 2 "api/v1" Vom Repo-Root sucht rg nach oben .git und wendet Ignore-Regeln dort an.
.gitignore und Ausnahmen
| Ziel | Befehl | Hinweis |
|---|---|---|
| Standard | rg pattern | Überspringt .gitignore-Pfade |
| Ignoriertes durchsuchen | rg --no-ignore pattern | Laut, für Build-Artefakte |
| Extra-Ausschluss | rg --glob '!*.min.js' foo | Filter zusätzlich zu Ignore |
| Eine Erweiterung | rg -t py "def main" | --type-list zeigt Typen |
- Passt
- Symbole, Env-Vars, TODOs in Monorepos; CI-Log auf Datei zurückverfolgen.
- Passt nicht
- Massenersatz in Dateien; Indexierung großer Binärdateien.
Ersetzt rg grep komplett?
Nein. rg für Verzeichnisbäume mit Ignore; grep für Pipes und Einzeldateien.
Warum nichts in node_modules?
Steht meist in .gitignore. rg --no-ignore oder direkt im Ordner suchen.
Windows erkennt rg nicht?
Terminal neu öffnen. where rg. Manuelles zip braucht PATH-Eintrag.
Nach der Suche ausrichten
Architektur profitiert von einer gemeinsamen Zeichnung. Kurzer Raum, kein Extra-Stack—Raum erstellen.