Когда я использовал cut
сегодня, я обнаружил, что это не символ UTF-8 как символ, а 3 символа, потому что его длина составляет 3 байта.
Похоже, что это в целом верно для многих инструментов.
Существуют ли версии с поддержкой coreutils
UTF-8?
Мой locale
вывод:
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=
Вот когда cut
не работает
echo 哈哈 | cut -c 2-
��哈
Правильный вывод должен быть
哈
если cut -c
работал с многобайтовыми символами.
cut
командной строки?
echo ßßßß | cut -c 2-
-> �ßßß
( LANG=en_US.UTF-8
)
locale
правильно настроили ? Что такое чтениеlocale
(без аргументов) вызова команды?