nafanja |
|
Темы:
94
Сообщения:
9252
Участник с: 02 июня 2012
заблокирован
|
думаю стоит вместо cut использовать что то другое.
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874 |
Anton8830 |
|
Темы:
23
Сообщения:
175
Участник с: 16 ноября 2013
|
Выяснилась одна дедаль: [anton@AntonStacionPC lib]$ sed -n "2p" and.ch | cut -c 10-11 х [anton@AntonStacionPC lib]$ sed -n "2p" and.ch | wc 1 5 20 [anton@AntonStacionPC lib]$ Получается,что русские символы кодируются не 8 бит, а 16... Т.е. один русский символ - это ДВА системных символа (в кодировке UTF-8). Самое непонятное, что на Солярисе такой проблемы не возникает... |
Anton8830 |
|
Темы:
23
Сообщения:
175
Участник с: 16 ноября 2013
|
nafanjaЧто например? |
Kycok |
|
Темы:
32
Сообщения:
1585
Участник с: 09 января 2013
|
Anton8830, lampslave дал ссылку, что это давний баг в cut. Для решения можно использовать awk:
|
lampslave |
|
Темы:
32
Сообщения:
4801
Участник с: 05 июля 2011
|
Открыли Америку... :) В utf-8 латиница кодируется одним байтом, а кириллица, иероглифы и прочее - двумя. P.S. для кода на форуме предусмотрен специальный тег. |
Anton8830 |
|
Темы:
23
Сообщения:
175
Участник с: 16 ноября 2013
|
KycokЭто баг не cut, а кодировки... Как может один печатный символ, грубо говоря, занимать 2 символа в кодировке? И как его нормальным способом отловить? |
Anton8830 |
|
Темы:
23
Сообщения:
175
Участник с: 16 ноября 2013
|
lampslaveДля меня да... Печально... Обламывает половину работы... |
lampslave |
|
Темы:
32
Сообщения:
4801
Участник с: 05 июля 2011
|
Anton8830Вот жалко смайликов нет... Ну перекодируйте всё в utf-16, там любой символ два байта занимает :) |
nafanja |
|
Темы:
94
Сообщения:
9252
Участник с: 02 июня 2012
заблокирован
|
Anton8830путаешь не 2 символа, а 2 байта.
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874 |
Anton8830 |
|
Темы:
23
Сообщения:
175
Участник с: 16 ноября 2013
|
nafanjaДа, спасибо... Просто опечалился... :-(Anton8830путаешь не 2 символа, а 2 байта. lampslaveВстречный вопрос: Я меняю локаль в /etc/locale.gen, запускаю locale-gen и меняю локаль в locale.conf. Это всё?Anton8830Вот жалко смайликов нет... Ну перекодируйте всё в utf-16, там любой символ два байта занимает :) Вопрос, что будет с файлами, которые уже есть в системе? |