partisan42
@partisan42
Новичок в Linux.

Почему такое может происходить с кириллицей в bash?

Доброго дня. Вопрос не носит цели решить какую либо насущную проблему, скорее понять, почему так происходит?
Есть VPS с такими данными.
root@vm:/etc# cat /etc/*release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=22.04
DISTRIB_CODENAME=jammy
DISTRIB_DESCRIPTION="Ubuntu 22.04.2 LTS"
PRETTY_NAME="Ubuntu 22.04.2 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.2 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy
root@vm657673:/etc# echo $SHELL
/bin/bash

Иногда, переключаясь между окнами, не меняешь раскладку и начинаешь писать в ssh клиенте на кириллице. Позже стираешь, и пишешь правильно.
Например...
Я пишу дд вместо ll, дважды нажимаю backspase, меняю раскладку и пишу уже правильно ll, в результате чего получаю следующее.
root@vm:/# ll
дll: command not found

Не то что бы это было прям критичным, но просто хочется понимать, почему так может происходить?
PS. Пробовал разные ssh клиенты. MobaXTerm, putty, виндовый дефолтный, везде одно и тоже.
  • Вопрос задан
  • 147 просмотров
Решения вопроса 1
@SunTechnik
Известная особенность..
У Вас используется Unicode. Русские символы - двухбайтные.
При удалении 1 русского символа - терминал удаляет 1 знако-место, но один байт в буфере редактирования (половина кода русской буквы).

Ну а дальше - тот эффект, который Вы наблюдаете..

Лечение - не знаю. ( Правда и не искал особо).
Попадаю на это, обычно, при вводе имени пользователя, при новой сессии putty. Знаю, что надо стирать до тех пор, пока что-то стирается :), несмотря что видишь на экране...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
ky0
@ky0
Миллиардер, филантроп, патологический лгун
Ctrl+W вместо Escape попробуйте.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы