grep

grep

grep ist ein Suchwerkzeug für Textdateien: Es durchsucht Zeile für Zeile und gibt alle Zeilen aus, die zu einem gesuchten Muster passen. Auf Servern und in der Softwareentwicklung ist es das Standardmittel, um in riesigen Protokolldateien schnell die relevanten Stellen zu finden.

grep ist ein kleines Programm, das man über eine Texteingabe am Computer startet, statt über ein Fenster mit Knöpfen. Man gibt ihm zwei Dinge: ein Suchmuster und eine oder mehrere Dateien. grep liest die Dateien dann Zeile für Zeile durch. Jede Zeile, die zum Muster passt, schreibt es auf den Bildschirm; alle anderen lässt es weg. Man kann es sich wie einen Textmarker vorstellen, der ein Buch selbst durchblättert und nur die passenden Zeilen abschreibt. Das Programm stammt aus den frühen 1970er-Jahren und gehört heute zur Grundausstattung von Linux und macOS.

Warum ein 50 Jahre altes Suchprogramm überlebt hat

Computer erzeugen ununterbrochen Textprotokolle, sogenannte Logs. Jeder Webserver schreibt auf, wer welche Seite abgerufen hat. Jede App notiert, wann etwas schiefging. Solche Dateien haben oft Millionen Zeilen, und niemand liest sie von vorne. Man braucht ein Werkzeug, das die drei interessanten Zeilen aus dieser Masse holt.

Genau das macht grep, und es macht es sehr schnell. Für ein paar hundert Megabyte Text braucht es oft weniger als eine Sekunde. Ein Texteditor müsste die Datei erst komplett in den Arbeitsspeicher laden und würde bei großen Dateien einfach hängen bleiben. grep arbeitet die Datei dagegen in kleinen Häppchen ab und braucht kaum Speicher.

Dazu kommt ein zweiter Grund: Der Befehl lässt sich automatisieren. Man kann ihn in ein Skript schreiben, das jede Nacht läuft und Alarm schlägt, wenn ein bestimmter Fehler auftaucht. Ein Mensch, der in einem Programmfenster klickt, kann das nicht. Deshalb ist grep bis heute Teil unzähliger Überwachungssysteme in Rechenzentren.

Suchmuster statt exaktem Wort

Im einfachsten Fall sucht man nach einem festen Wort. Der Befehl grep « Fehler » logbuch.txt zeigt alle Zeilen der Datei logbuch.txt, in denen das Wort Fehler vorkommt. Das reicht für viele Alltagsfälle schon aus.

Die eigentliche Stärke liegt aber in flexiblen Suchmustern, die Fachleute reguläre Ausdrücke nennen. Dabei stehen bestimmte Sonderzeichen nicht für sich selbst, sondern für Regeln. Ein Punkt bedeutet zum Beispiel « hier steht irgendein einzelnes Zeichen ». Ein Sternchen bedeutet « das Zeichen davor darf beliebig oft wiederkommen ». So kann man nach allen Zeilen suchen, die mit einer Zahl beginnen, oder nach allem, was wie eine E-Mail-Adresse aussieht.

Zusätzlich steuern kurze Zusätze das Verhalten. Mit -i ignoriert grep Groß- und Kleinschreibung, mit -v dreht es die Suche um und zeigt alle Zeilen, die NICHT passen. Mit -r durchsucht es einen ganzen Ordner samt Unterordnern. Ein häufiger Irrtum ist übrigens, grep sei eine Suche für ganze Dateien. Es sucht immer zeilenweise, und die Zeile ist auch das, was ausgegeben wird.

Wo der Befehl im Berufsalltag auftaucht

Wer als Entwicklerin oder Systemadministrator arbeitet, benutzt grep oft mehrmals pro Stunde. Typische Fragen: In welcher Datei unseres Programms steht dieser Text eigentlich? Wann hat sich dieser Nutzer zuletzt angemeldet? Auch bei Sicherheitsvorfällen ist es das erste Werkzeug, mit dem man Logdateien nach verdächtigen Zugriffen durchkämmt.

Das Wort hat es sogar in die Alltagssprache der Branche geschafft. « Kannst du das mal greppen? » heißt einfach: Suche das in den Dateien. In Stellenanzeigen für IT-Berufe steht grep häufig als Grundkenntnis, ähnlich selbstverständlich wie Tabellenkalkulation in kaufmännischen Berufen.

Auch im Umfeld von KI spielt es eine Rolle. Wer riesige Textsammlungen für das Training eines Sprachmodells vorbereitet, filtert damit unerwünschte Inhalte oder Duplikate heraus. Und wenn ein KI-Assistent Programmcode durchsucht, ruft er im Hintergrund häufig genau diesen alten Befehl auf. Es gibt inzwischen schnellere Nachfolger wie ripgrep, doch das Prinzip ist unverändert geblieben.

Subscribe free. Unsubscribe the second it sucks.

High-signal news across AI, business, UX, and tech. Every morning.