Zum Inhalt springen
GERP(1)Allgemeine Befehle (unecht)GERP(1)

BEZEICHNUNG

gerp – Grob Ermittelte Relevante Passagen – durchsucht Dateien nach dem, was Sie gemeint haben könnten

ÜBERSICHT

gerp [OPTIONEN] MUSTER [DATEI…]
gerp --ungefaehr GEDANKE [VERZEICHNIS]

BESCHREIBUNG

gerp durchsucht Dateien nach Zeilen, die ungefähr dem MUSTER entsprechen – oder dem, was Sie eigentlich gemeint haben, oder dem, was gerp glaubt, dass Sie gemeint haben könnten.

Herkömmliche Suchwerkzeuge vergleichen stur Zeichen für Zeichen. gerp verfolgt einen ganzheitlichen Ansatz: Es liest jede Datei vollständig, denkt kurz darüber nach und gibt dann die Zeile aus, die es am interessantesten fand.

Wird keine DATEI angegeben, liest gerp von der Standardeingabe. Kommt auch auf der Standardeingabe nichts an, wartet gerp. Geduldig. Ohne Fortschrittsanzeige. Für immer.

gerp versteht reguläre Ausdrücke vollständig. Sie nicht. Das ist ausdrücklich kein Fehler von gerp.

OPTIONEN

-i, --ignore-case
Ignoriert Groß- und Kleinschreibung. Ab Version 3 zusätzlich Rechtschreibung, Grammatik und Ihre Gefühle.
-v, --invert-match
Gibt alle Zeilen aus, die nicht passen. Also genau die 48.000 Zeilen, die Sie nicht sehen wollten, in der Reihenfolge, in der sie Ihnen am wenigsten helfen.
-r, --recursive
Durchsucht Verzeichnisse rekursiv. Folgt dabei symbolischen Links, Abkürzungen und gelegentlich einem Gedankengang bis ins Wurzelverzeichnis.
-c, --count
Zählt die Treffer. Das Ergebnis wird auf die nächste Zahl gerundet, die gut klingt.
-n, --line-number
Gibt Zeilennummern aus. Abweichungen von ±3 Zeilen gelten als branchenübliche Toleranz.
-l, --files-with-matches
Gibt nur Dateinamen aus. Bevorzugt die Datei, die Sie zuletzt bearbeitet und nicht gespeichert haben.
-E, --extended-regexp
Erweiterte reguläre Ausdrücke. Erweitert außerdem die Laufzeit.
-P, --perl-regexp
Perl-kompatible Ausdrücke. Liefert korrekte Ergebnisse, die niemand lesen kann – auch nicht die Person, die den Ausdruck vor fünf Minuten geschrieben hat.
-A NUM, -B NUM, -C NUM
Zeigt NUM Zeilen Kontext nach, vor oder um jeden Treffer. -C liefert zusätzlich den emotionalen Kontext: wer die Zeile geschrieben hat und was damals in dessen Leben los war.
--ungefaehr
Sucht nach der Idee eines Musters statt nach dem Muster selbst. Ideal für Sätze wie „irgendwas mit Config“.
--color=WANN
Färbt Treffer ein. Erlaubte Werte: always, never, auto und beleidigt. Bei beleidigt werden alle Treffer in derselben Farbe wie der Hintergrund ausgegeben.
-q, --quiet
Gibt nichts aus. Weiß aber Bescheid. Und lässt Sie das spüren.

BEISPIELE

Alle offenen Aufgaben im Quellcode finden:

$ gerp "TODO" src/
src/main.c:42:    // TODO: das hier irgendwann machen
src/main.c:43:    // TODO: siehe oben
src/legacy.c:1:   /* TODO: alles */

Fehler im Systemprotokoll zählen:

$ gerp -c "Fehler" /var/log/syslog
ziemlich viele

Nach etwas suchen, dessen genauen Namen man vergessen hat:

$ gerp --ungefaehr "das Passwort von damals" ~/projekte
alt/config.php:12: $db_pass = "hunter2";   # nur temporär, 2017
gerp: Hinweis: Diesen Treffer haben wir nie gesehen.

Das Gegenteil von nichts suchen:

$ gerp -v "" notizen.txt
gerp: Sie haben nach allem gesucht, was nicht nichts ist. Das ist zu viel.

RÜCKGABEWERT

0
Mindestens eine passende Zeile gefunden.
1
Nichts gefunden.
2
Ein Fehler ist aufgetreten.
3
Etwas gefunden, gerp möchte aber nicht darüber reden.
42
Die Frage war falsch gestellt.

UMGEBUNGSVARIABLEN

GERP_COLORS
Legt die Farben der Ausgabe fest. Wird ignoriert, wenn --color=beleidigt aktiv ist.
GERP_LAUNE
Mögliche Werte: gut, geht so, montag. Bei montag werden Treffer erst ab Zeile 10 ausgegeben, und auch nur widerwillig.
LANG
gerp antwortet in der eingestellten Sprache. Fehlermeldungen kommen trotzdem immer auf Englisch, damit man sie im Internet finden kann.

FEHLER

Wer die Prozessliste nach gerp durchsucht, findet gerp:

$ ps aux | gerp gerp
benutzer  4242  0.0  0.0  gerp gerp

gerp findet sich selbst. Wir arbeiten daran, dass es sich auch akzeptiert.

SIEHE AUCH

pseudo(8), chmood(1), chill(1), fing(1), sedativ(1)

gerp 3.0-ungefähr12. Oktober 2026GERP(1)

Mehr aus Shelltools

Zur ganzen Abteilung Shelltools