Gibt es eine effizientere Möglichkeit, grep zu verwenden?

Gibt es eine effizientere Möglichkeit, grep zu verwenden?

Ich habe grep zum Durchsuchen von Datenbanken verwendet. Beim Durchsuchen mehrerer Ordner mit mehreren Textdateien habe ich den folgenden Befehl verwendet.

grep 'text_search' */*

Gibt es einen besseren Befehl, der die Suche in großen Datenmengen beschleunigt? Ich bin offen dafür, bei Bedarf auch andere Tools zu verwenden.

Antwort1

Ich bin ein Fan vonAbonnieren

Wenn Sie lieber bei grep bleiben möchten, grep -Fgleicht es Zeichenfolgen und keine Muster ab (was schneller sein kann, aber nicht muss; ich bin nicht sicher, ob moderne greps ein einfaches Muster zu einer Zeichenfolgensuche vereinfachen).

Parallelbetrieb grepist auch eine Option. Ich verwendeGNU paralleldafür.

find . -type f | parallel --jobs {#jobs} -n 500 -k -m grep -H {search-pattern} {}

(Jobs und Suchmuster stehen nicht in Klammern; sie zeigen eine Variable an, die Sie eingeben müssen)

verwandte Informationen