Как включить поддержку UTF-8 в консоли Linux?

Сейчас это выглядит так:

введите описание изображения здесь

2 Solutions collect form web for “Как включить поддержку UTF-8 в консоли Linux?”

Конечно (ограничено количеством глифов, но, похоже, ваш язык использует кодировку UTF-8).

Я использую это для тестирования:

#!/bin/sh # send character-string to enable UTF-8 mode if test ".$1" = ".off" ; then printf '\033%%@' else printf '\033%%G' fi 

и (называя его «utf8»), «utf8 on» включает кодировку.

Используя пример, приведенный в pstree , вот пример после запуска скрипта (до того же типа вывода, что и в вопросе):

снимок экрана после "utf8 on"

Как отмечено в комментарии, есть сценарий unicode_start который делает больше , но все, что необходимо для решения поставленного вопроса, – это небольшой сценарий, используемый в качестве примера.

Обращаясь к другому комментарию: по крайней мере, на моей системе (и на скриншоте, указанном в вопросе) все символы, используемые pstree , поставляются в шрифте 512-glyph, который используется по умолчанию для поддержки Unicode в консоли Linux.

Дальнейшее чтение:

  • console_codes – удаленные и управляющие последовательности консоли Linux
  • В тумане: как работают консольные шрифты Linux

Убедитесь, что у вас установлен пакет locales

 dpkg -l locales 

Если нет, установите его

 apt-get install locales 

Как root, введите

 dpkg-reconfigure locales 

вы можете перемещаться по этому списку с помощью клавиш со стрелками вверх / вниз, например, выберите en_US-UTF-8

отредактируйте свой .bashrc , добавив следующие строки:

 export LC_ALL=en_US.UTF-8 export LANG=en_US.UTF-8 export LANGUAGE=en_US.UTF-8 

Запустите команду locale , выход должен быть похож на этот:

 LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL= 
  • Монетный двор 17 (Корица): CTRL + Shift + U, не позволяющий вводить символы Юникода
  • Найти лучший шрифт для рендеринга codepoint
  • Можно ли использовать split для создания кусков символов из китайских байтов юникода?
  • Почему xxd не показывает знак порядка байтов?
  • Символы, отличные от ASCII, обрабатываются неправильно в командной строке
  • Как установить языковой стандарт cs_CZ.ISO8859-2 на Ubuntu 12.04
  • консоль, отображающая символ цитаты из gcc wongly
  • Обработать файл, который начинается с спецификации (FF FE)
  • В bash, как я могу конвертировать Unicode Codepoint в печатный символ?
  • Символ Юникода в пароле
  • Имя домашней папки с символами Unicode?
  • Interesting Posts

    debian неустойчивый сбой

    Debian и Windows 8 UEFI с двойной загрузкой на отдельных дисках

    Обновления Google Chrome после 32-битного прекращения

    Использование Ubuntu Server в качестве DHCP и DNS-сервера для пересылки URL-адресов на IP-адреса

    Использование iscan (плагин GIMP) из командной строки

    Как отключить ведение журнала UFW для определенного события?

    Как защитить набор папок от записи определенным процессом?

    Найти точку доступа hostadd SSID

    Использование «%» в crontab

    Какие драйверы шины следует включать при компиляции ядра FreeBSD?

    Что означает точка в регулярном выражении «^ {2} {2}. *" Делать?

    Как выполнить загрузку альтернативных ядер, показанных в меню верхнего уровня GRUB?

    Запуск различных команд оболочки, когда NUT сообщает о низком заряде ИБП

    Как выполнить команду Bash и выполнить два утверждения при сбое?

    Некоторые буквы на gnome-terminal не могут быть введены конкретным пользователем

    Linux и Unix - лучшая ОС в мире.