Grep on Steroids

  Ralf Hersel   Lesezeit: 2 Minuten  🗪 2 Kommentare

Ripgrep-all: Ein Werkzeug, um fast alle Dateitypen zu durchsuchen.

grep on steroids

Nein, ich habe keine Lust, einen Artikel über die 102. Folge von Firefox zu schreiben. Viel interessanter finde ich "grep on steroids". Jede Linux-Anwenderin, die sich ein paar Wochen mit dem Terminal beschäftigt hat, kennt das grep Kommando, mit dem man Dateien nach Texten durchsuchen kann.

Grep ist sozusagen das lokale Googlen auf der Kommandozeile (shame on me). Aber grep hat ein Problem, es durchsucht nur Textdateien. Ripgrep-all löst diese Einschränkung auf.

Ripgrep-all installiert man auf die gewohnte Weise, zum Beispiel mit pamac install ripgrep-all oder entsprechend der jeweiligen Distribution. Statt grep kann nun das Kommando rga für die Suche verwendet werden. Das Werkzeug sucht in Mediendateien (.mkv, .mp4, .avi), in Dokumenten (.epub, .odt, .docx, .fb2, .ipynb, .pdf), in Archiven (.zip, .tar, .tgz, .tbz, .tbz2, .gz, .bz2, .xz, .zst), in Datenbanken (.db, .db3, .sqlite, .sqlite3) und in Bildern (.jpg, .png).

Zu Testzwecken habe ich ein paar Dateien unterschiedlichen Typs angelegt, nämlich .odt, .ods, .pdf, .md, .txt, .png, .sqlite. Allen ist gemeinsam, dass sie das Wort "Blumenkohl" enthalten. Hier ist das Ergebnis der Suche:

rga Blumenkohl

test.tar.gz
test.txt: Heute essen wir Blumenkohl, morgen gibt es Spinat.

test.txt
Heute essen wir Blumenkohl, morgen gibt es Spinat.

test.sqlite
gemuese: vorname='Berta', nachname='Blumenkohl'

test.pdf
Page 1: Heute essen wir Blumenkohl, morgen gibt es Spinat.

test.md
Heute essen wir Blumenkohl, morgen gibt es Spinat.

test.odt
Heute essen wir Blumenkohl, morgen gibt es Spinat.

Damit auch Bilder (.png, .jpg) mittels OCR durchsucht werden können, muss zusätzlich der Tesseract-Adapter installiert werden. Ripgrep-all bietet viele weitere Möglichkeiten und Optionen, die unter den Quellen erklärt sind.

Quellen:

Tags

Grep, Suche, Suchen, Dateien, Datei

👓
Geschrieben von 👓 am 29. Juni 2022 um 11:32

Wir hatten hier ja schon häufiger solche tools. Einige reden von erweiterungen, ich würde von Moderneren tools zu den etablierten sprechen.

Bin ja nicht der distrohopper. Aber eine distribution die alle klassischen tools durch modernere ersetzt würde ich tatsächlich mal ausprobieren. Dann soll aber auch bei 'echo "test" |grep test' ripgrep-all genutzt werden und das ursprüngliche grep fehlen.

Es wäre endltich mal wieder was neues in der Linux welt.

kaligule
Geschrieben von kaligule am 29. Juni 2022 um 23:02

Ich dachte ja nicht, dass ich in den nächsten 20 Jahren nochmal was anderes als ripgrep benutzen wollen würde. Aber das hier macht ja schon Sinn. Danke für den guten Tipp.