In diesem Beispiel Ordnerstruktur:
/folder1/file1.txt /folder1/file2.djd /folder2/file3.txt /folder2/file2.fha
Wie mache ich eine rekursive Textsuche für alle *.txt
Dateien mit grep
"/"?
( "grep -r <pattern> *.txt"
schlägt fehl, wenn von "/" ausgeführt wird, da sich .txt
in diesem Ordner keine Dateien befinden .)
command-line-interface
grep
search
Anders Sandvig
quelle
quelle
-
.grep
ist schneller vonfind
.Sie könnten in der Lage sein Einsatz Ihrer machen
zsh
‚s -EXTENDED_GLOB
Option ( docs )quelle
Vielleicht möchten Sie sich ack unter http://betterthangrep.com ansehen , wo Sie Dateien nach Dateityp suchen können.
quelle
quelle
Mannis Antwort würde für jede Textdatei einen neuen Grep-Prozess auslösen. Wenn Sie dort viele Textdateien haben, können Sie jede Datei zuerst prüfen und die TXT-Dateien auswählen, wenn dies erledigt ist:
Das ist zwar festplattenintensiver, könnte aber trotzdem schneller sein.
quelle
Es ist 2019 und es gibt keine Möglichkeit, Grep für die rekursive Textsuche zu verwenden.
IMHO heutigen Antworten sollten Ripgrep enthalten :
quelle