Wie werden nachstehende Leerzeichen in der Textdatei angezeigt?

Wie werden nachstehende Leerzeichen in der Textdatei angezeigt?

Ich möchte die nachstehenden Leerzeichen in der Textdatei drucken und sehen können (nur anzeigen, nicht entfernen).

Ich habe versucht, mit cat -vwhich assume nicht druckbare Zeichen anzuzeigen, aber es zeigt sie nicht wie erwartet an (kein visueller Unterschied zwischen den Zeilen). Beispiel:

$ printf "foo\nbar \t\n" > file.txt
$ cat -v file.txt 
foo
bar     

Mit „Leerzeichen drucken/anzeigen“ meine ich eine visuelle menschliche Anzeige, dass das nachstehende Leerzeichen im Vergleich zu anderen Zeilen ohne vorhanden ist, entweder durch ein Sonderzeichen, eine Farbe (wie wenn Dateien mit angezeigt werden git diff) oder etwas Ähnliches.

Gibt es einen anderen Weg?


Hinweis: Ich verwende macOS Sierra, habe jedoch Zugriff auf sowohl GNU- als auch BSD- catBefehle:

$ type -a cat
cat is /usr/local/opt/coreutils/libexec/gnubin/cat
cat is /bin/cat
$ cat --version
cat (GNU coreutils) 8.28
$ /bin/cat --version
/bin/cat: illegal option -- -
usage: cat [-benstuv] [file ...]

Antwort1

gnu cathat den -ESchalter dafür also mit einem Eingang wie

printf " one \ntwo \t\n"

es wird gedruckt

 one $
two    $

Es gibt viele Möglichkeiten, dieses Verhalten zu emulieren, z. B. durch Verwendung sedim „Raw“-Modus:

sed -n l infile

oder

paste -d '$' infile /dev/null

oder verwenden Sie ein beliebiges Textverarbeitungsprogramm, um $vor jeder neuen Zeile ein ... einzufügen.

Sie könnten auch etwas wie versuchen

less -p '[[:blank:]]+$' infile

Dadurch wird das Muster hervorgehoben (in diesem Fall die nachstehenden Leerzeichen) ...

verwandte Informationen