Command Builder · Dateien & Suche
grep Command Builder
Suchmuster und Pfad eintragen, Optionen anhaken — der Builder erzeugt den fertigen grep-Befehl wie grep -rin error /var/log und erklärt jede Option. Ausgeführt wird hier nichts, du kopierst nur Text.
Vorlage übernehmen:
Optionen
Erweiterte Optionen▾
Generierter Befehl
grep -rin error /var/logDas bedeuten die Parameter
-r- Durchsucht Ordner samt aller Unterordner statt nur einer Datei.
-i- Findet Error, ERROR und error gleichermaßen.
-n- Zeigt zu jedem Treffer die Zeilennummer in der Datei.
error- Wonach gesucht wird — ein Wort oder ein regulärer Ausdruck; der Builder quotet das Muster automatisch. Standardmäßig interpretiert grep das Muster als regulären Ausdruck: . steht für ein beliebiges Zeichen, ^ für den Zeilenanfang. Für die wörtliche Suche die Option „Fester String“ aktivieren.
/var/log- Eine Datei oder — mit „Rekursiv“ — ein Ordner, der komplett durchsucht wird.
Das Arbeitstier der Fehlersuche
grep durchsucht Text zeilenweise nach einem Muster — Logs, Konfigurationsdateien, Quellcode. Die Kombination -rin ist der Klassiker fürs Homelab: rekursiv durch einen ganzen Ordner (-r), ohne auf Groß- und Kleinschreibung zu achten (-i), mit Zeilennummern (-n), damit du die Stelle sofort wiederfindest.
Kontext statt Einzelzeile
Ein Treffer allein erklärt selten das Problem. Mit -B 3 und -A 3 (oder kurz -C 3) siehst du die Zeilen davor und danach — bei Fehlermeldungen steht die Ursache oft direkt darüber und der Stacktrace darunter. Und wenn dein Suchbegriff Sonderzeichen wie Punkte oder Klammern enthält, nimmt -F ihn wörtlich, statt ihn als regulären Ausdruck zu interpretieren.
Alle Optionen im Überblick
| Option | Bedeutung | Erklärung |
|---|---|---|
Suchmuster | Suchmuster | Wonach gesucht wird — ein Wort oder ein regulärer Ausdruck; der Builder quotet das Muster automatisch. Standardmäßig interpretiert grep das Muster als regulären Ausdruck: . steht für ein beliebiges Zeichen, ^ für den Zeilenanfang. Für die wörtliche Suche die Option „Fester String“ aktivieren. |
Datei / Pfad | Datei / Pfad | Eine Datei oder — mit „Rekursiv“ — ein Ordner, der komplett durchsucht wird. |
-r | Rekursiv (-r) | Durchsucht Ordner samt aller Unterordner statt nur einer Datei. |
-i | Groß-/Kleinschreibung ignorieren (-i) | Findet Error, ERROR und error gleichermaßen. |
-n | Zeilennummern (-n) | Zeigt zu jedem Treffer die Zeilennummer in der Datei. |
-v | Treffer umkehren (-v) | Zeigt alle Zeilen, die NICHT auf das Muster passen — z. B. um Rauschen auszublenden. |
-w | Nur ganze Wörter (-w) | „error“ findet dann nicht mehr „errors“ oder „error_log“. |
-F | Fester String (-F) | Sucht das Muster wörtlich statt als regulären Ausdruck — wichtig, wenn es Zeichen wie . oder [ enthält. |
-o | Nur den Treffer zeigen (-o) | Gibt nur den passenden Textausschnitt aus statt der ganzen Zeile. |
-c | Nur zählen (-c) | Zeigt pro Datei nur die Anzahl der Trefferzeilen. |
-B | Zeilen davor (-B) | Zeigt zusätzlich N Zeilen vor jedem Treffer — der Weg zur Ursache. |
-A | Zeilen danach (-A) | Zeigt zusätzlich N Zeilen nach jedem Treffer — z. B. den Stacktrace. |
-C | Kontext (-C) | Zeigt N Zeilen vor UND nach jedem Treffer — ersetzt -A und -B. |
--include | Nur Dateien (--include) | Durchsucht bei rekursiver Suche nur Dateien, die auf dieses Muster passen. |
--exclude | Dateien ausschließen (--exclude) | Überspringt Dateien, die auf dieses Muster passen — z. B. rotierte .gz-Logs. |
Häufige Fragen
Was bedeutet grep -rin?
Drei kombinierte Kurz-Optionen: -r durchsucht Ordner rekursiv, -i ignoriert Groß-/Kleinschreibung, -n zeigt Zeilennummern. grep -rin error /var/log findet also jedes „error“, „Error“ oder „ERROR“ unterhalb von /var/log samt Fundstelle.
Wann brauche ich -F (fester String)?
Sobald dein Suchbegriff Zeichen enthält, die in regulären Ausdrücken eine Bedeutung haben — Punkt, Stern, Klammern. Eine Suche nach der IP 192.168.1.1 ohne -F trifft auch 192x168x1x1, weil der Punkt für „beliebiges Zeichen“ steht.
Wie durchsuche ich nur bestimmte Dateitypen?
Mit --include bei rekursiver Suche: grep -r error /var/log --include='*.log' prüft nur .log-Dateien. --exclude funktioniert umgekehrt und überspringt z. B. rotierte .gz-Archive.
Passende Tools
Passende Guides
Netzwerk
Pi-hole mit Unbound: Werbefilter plus eigener rekursiver DNS
Warum Pi-hole allein deine DNS-Anfragen nur weiterreicht — und wie du mit Unbound als rekursivem Resolver unabhängig von Google, Cloudflare & Co. wirst. Mit kompletter Konfiguration.
Selfhosting
Uptime Kuma + Beszel: Der kostenlose Monitoring-Stack fürs Homelab
Zwei leichtgewichtige Tools, die zusammen 90 % des Homelab-Monitorings abdecken: Uptime Kuma für Dienste und SSL, Beszel für CPU, RAM, Disks und Docker — mit Compose-Setup und Alarm-Strategie.