Долгое время я пользовался бинарником баша версии 4.3, который был взят из одноимённого приложения в GooglePlay (которое уже сгинуло оттуда) и отсутствие нормальной работы с кириллицей воспринималось как данность. Были попытки заставить работать кириллицу через создание конфига /etc/inputrc со строками
Код: Выделить всё
set meta-flag on
set convert-meta off
set output-meta on
но кириллица при этом работала через одно место - при использовании tab в терминал выбрасывается текстовый мусор, а при использовании backspace затирается слишком много. Не так давно, я обратил внимание, что подобных проблем нет в bash'e из комплекта entware, который использовался на Zyxel'e (Омни II). Установил bash на смарт, сменил используемый шелл в sshdroid (standalone реализация dropbear'a под ведро) и кириллица зашуршала в Putty без какой либо доп. настройки. Решил проделать тоже самое в ConnectBot (под андроидом) и словил обломинго - кириллица в баше из entware вбивается точно так же в кодировке UTF-8 в восьмибитном виде (если верить гуглу) как и в bash'e из GooglePlay
Что примечательно, "родной" sh (mksh) без каких-либо танцев с бубном позволяет работать с кириллицей что в ConnectBot, что в sshdroid. Наряду с клиентом ConnectBot я для чистоты эксперимента установил jackpal.androidterm.71 (Терминал) ибо в ConnectBot в выхлопе set в переменной TERM упорно значилось vt100, хотя я в настройках ConnectBot жёстко указал xterm. "Терминал" хоть и коннектился в режиме эмуляции xterm, но вместо кириллицы так же как и ConnectBot показывал в баше восимибитную петрушку (опция по умолчанию UTF-8 включена). Сразу отмечу, что .profile используемый sshdroid был идентичен тому, что был использован для bash'a в ConnectBot или "Терминале" и не содержал какой-либо специфики по работе с кодировками и прочим. Заострить на этом моменте внимание я решил про причине того, что обнаружил в Putty в выхлопе set строки манипулирующие локалью (откуда они там - отдельный вопрос)
которые ябез особой надежды применил в ConnectBot/"Терминале" и как и ожидал, получил всё те же "8 бит" (ru_RU.UTF-8 я тоже пробовал к слову).
p.s. Пока писал сей пост, появилась мысль, как можно решить даную проблему - законнектиться через ConnectBot по ssh на локалхост, где bash корректно работает с кириллицей (и это действительно работает - кириллица в клиенте вбивалась/табилась/стиралась корректно !)
Но это конечно костыль и хотелось бы взаимодействовать с башем без дополнительного демона и понять причины проблемы )))