Как я могу обрабатывать utf8, используя Perl (или Python) в командной строке?
Например, я пытаюсь разделить символы в каждом слове. Это очень просто для текста, отличного от utf8, например:
$ echo "abc def" | perl -ne 'my @letters = m/(.)/g; print "@letters\n"' | less
a b c d e f
Но с utf8 это, конечно, не работает:
$ echo "одобрение за" | perl -ne 'my @letters = m/(.)/g; print "@letters\n"' | less
<D0> <BE> <D0> <B4> <D0> <BE> <D0> <B1> <D1> <80> <D0> <B5> <D0> <BD> <D0> <B8> <D0> <B5> <D0> <B7> <D0> <B0>
, потому что он не знает о 2-байтовых символах.
Также было бы неплохо узнать, как это (т. е. обработка utf8 из командной строки) выполняется в Python.