Я пытаюсь извлечь список слов из русской истории.
#!/bin/sh
export LC_ALL=ru_RU.utf8
sed -re 's/\s+/\n/g' | \
sed 's/[\.!,—()«»;:?]//g' | \
tr '[:upper:]' '[:lower:]' | \
sort | uniq
Однако шаг tr
не содержит нижние заглавные буквы кириллицы. Я думал, что я умный, используя переносные классы символов!
$ LC_ALL=ru_RU.utf8 echo "Г" | tr [:upper:] [:lower:]
Г
Если это уместно, я получил русский текст, скопировав его из окна браузера Chrome в Vim. Он выглядит прямо на экране (терминал Putty). Это в оболочке Cygwin bash - она должна работать тождественно с bash в Linux (должна!).
Что такое переносимый, надежный способ ввода текста в Юникоде в трубке?