GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie suchen Sie mit grep unter Linux nach Dateien, die DOS-Zeilenenden (CRLF) enthalten?

grep ist wahrscheinlich nicht das Werkzeug, das Sie dafür brauchen. Es wird eine Zeile für jede übereinstimmende Zeile in jeder Datei gedruckt. Wenn Sie z. B. Todos 10 Mal auf einer 10-Zeilen-Datei ausführen möchten, ist grep nicht der beste Weg, dies zu tun. Wenn Sie find verwenden, um file für jede Datei im Baum auszuführen, und dann nach "CRLF" suchen, erhalten Sie eine Ausgabezeile für jede Datei, die Zeilenenden im dos-Stil hat:

find . -not -type d -exec file "{}" ";" | grep CRLF

erhalten Sie so etwas wie:

./1/dos1.txt: ASCII text, with CRLF line terminators
./2/dos2.txt: ASCII text, with CRLF line terminators
./dos.txt: ASCII text, with CRLF line terminators

Verwenden Sie Strg +V , Strg +M um ein wörtliches Carriage Return-Zeichen in Ihren grep-String einzugeben. Also:

grep -IUr --color "^M"

funktioniert - wenn ^M Es gibt ein wörtliches CR, das Sie eingeben, wie ich vorgeschlagen habe.

Wenn Sie die Liste der Dateien möchten, möchten Sie die -l hinzufügen Option.

Erklärung

  • -I binäre Dateien ignorieren
  • -U verhindert, dass grep CR-Zeichen entfernt. Standardmäßig tut es dies, wenn es entscheidet, dass es sich um eine Textdatei handelt.
  • -r alle Dateien unter jedem Verzeichnis rekursiv lesen.

Verwendung von RipGrep:

rg -l \r
-l, --files-with-matches
Only print the paths with at least one match.

https://github.com/BurntSushi/ripgrep


Linux
  1. Suchen Sie schnell nach Dateien in Linux mit dem Locate-Befehl

  2. So finden Sie Dateien im DOS-Format in einem Linux-Dateisystem

  3. Wie finde ich Textdateien, die keinen Text unter Linux enthalten?

  4. So durchsuchen Sie Linux-Manpages (z. B. mit grep)

  5. Wie finde ich unter Linux Dateien, die zwei Zeichenfolgen zusammen enthalten?

Tipps zum Auflisten von Dateien mit ls in der Linux-Befehlszeile

So finden Sie Dateien in Linux mit dem Find-Befehl

Linux:So teilen Sie Dateien in einem lokalen Netzwerk mit woof

So führen Sie eine Mustersuche in Dateien mit Grep durch

So suchen Sie nach Dateien über die Linux-Befehlszeile

So finden Sie Dateien, die eine bestimmte Textzeichenfolge in Linux enthalten