Als ich cut
heute verwendete, stellte ich fest, dass es ein UTF-8-Zeichen nicht als Zeichen behandelt, sondern 3 Zeichen, weil es 3 Byte lang ist.
Dies scheint im Allgemeinen für viele Werkzeuge zu gelten.
Gibt es Versionen von coreutils
UTF-8?
Meine locale
Ausgabe:
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
Hier ist, wenn cut
nicht funktioniert
echo 哈哈 | cut -c 2-
��哈
Die richtige Ausgabe sollte sein
哈
wenn cut -c
mit Multibyte-Zeichen gearbeitet.
cut
Befehlszeile hinzufügen ?
echo ßßßß | cut -c 2-
-> �ßßß
( LANG=en_US.UTF-8
)
locale
richtig eingestellt? Wie lautet die Lesart deslocale
Befehlsaufrufs (ohne Argumente)?