Один из серверов, на котором я довольно часто ssh
использую западную кодировку вместо utf-8 (и я никак не могу это изменить).
Я начал писать сценарий bash для подключения к этому серверу, поэтому мне не придется каждый раз печатать полный адрес, но я хотел бы улучшить этот сценарий, чтобы он также корректно изменял кодировку окна терминала.
Изменение, которое мне нужно сделать, можно выполнить с помощью мыши, перейдя в «Терминал» -> «Установить кодировку символов ...» -> «Western (ISO-8859-1)». Есть ли команда терминала, которая делает то же самое для текущего окна / экрана терминала?
Для пояснения:
меня не интересуют способы переключения локали системы на удаленном сайте - эта система управляется кем-то другим, и я понятия не имею, что может зависеть от кодировки latin-1. То, что я хочу сделать, - это разрешить этому терминальному окну на моей стороне переключать кодировку символов на вышеупомянутую, точно так же, как я могу сделать это с помощью мыши и меню.
источник
Ответы:
Вы ищете,
luit
который предназначен для этой цели:$ luit -encoding ISO-8859-1 ssh remote.host
Он преобразует вывод команды ssh в UTF-8, поэтому вам не нужно менять кодировку терминала.
источник
Сначала отредактируйте текущие локали в вашем любимом редакторе
sudo gedit /var/lib/locales/supported.d/local
что-то вродеТогда беги
sudo dpkg-reconfigure locales
Затем установите терминал с
LANG=en_GB.ISO-8859-1
Надеюсь, что это работает
источник
Gnome Terminal использует gconf для хранения настроек. Этим можно управлять с помощью
gconftool
Итак, вы можете использовать:Я проверил это 12.04. По некоторым причинам меню (
"Terminal"->"Set Character Encoding..."
) не обновляется в реальном времени, но фактическая кодировка символов корректно обновляется.источник
Я не знаю, как это проверить, но с помощью Konsole в Kubuntu я могу сделать следующее:
1) Найти приложение зарегистрировано на dbus
Я использую
konsole
так простоqdbus | grep kons
дает мнеorg.kde.konsole
2) Найти текущие сессии в Konsole
3) Найти полезные методы
4) Проверьте текущую кодировку
5) Установите кодировку
6) Проверьте текущую кодировку
В Ubuntu будет аналогичная терминальная программа, но вам придется немного озадачиться правильными именем, путем, методом и аргументами.
источник
Вот еще одно решение, которое я использовал для изменения профиля (для цвета фона) при подключении к производственному серверу. Это вовлекает
xdotool
.xdotool
будет имитировать нажатия клавиш, необходимые для выбора нужного пункта меню. Попробуйте сначала с помощью клавиатуры, затем запишите последовательность:Это активирует первую кодировку символов. Добавьте еще
Down
ключи перед тем,Return
чтобы выбрать другой.Примечание: для
ssh
, вы также можете использовать~/.ssh/config
файл для настройки псевдонимов для ваших серверов.источник
Включите
xterm
, измените кодировку, используя управляющие последовательности . Например, внутриbash
вы получите набор символов UTF-8, выполнив:Кодирование ISO 8859-1 доступно при запуске:
источник