Lorsque j'ai utilisé cut
aujourd'hui, j'ai découvert qu'il ne traitait pas un caractère UTF-8 comme un caractère, mais 3 caractères car il faisait 3 octets de long.
Cela semble généralement vrai pour de nombreux outils.
Existe-t-il des versions de l' coreutils
UTF-8?
Ma locale
sortie:
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=
Voici quand cut
ça ne marche pas
echo 哈哈 | cut -c 2-
��哈
La bonne sortie doit être
哈
si cut -c
travaillé avec des caractères multi-octets.
cut
ligne de commande?
echo ßßßß | cut -c 2-
-> �ßßß
( LANG=en_US.UTF-8
)
locale
? Quelle est la lecture de l'locale
invocation de la commande (sans arguments)?