Как узнать, поддерживает ли терминал UTF-8

После проверения дважды всех кабелей Вы могли попытаться протестировать диск со специализированным программным обеспечением от производителя, как:

21
задан 28 May 2009 в 18:47
7 ответов

Действительно, верный способ протестировать состоит в том, чтобы загрузить текстовый файл и кошку это в терминале и видеть, смотрит ли все хорошо.

или, если Вы можете, перекомпилировать терминал, разрешающий unicode опцию (предполагающий, что это имеет один).

на что похожи $TERM и $LANG?

15
ответ дан 2 December 2019 в 20:03
  • 1
    $TERM является " xterm" $LANG является " en_US.UTF-8" (ага!) Текстовый файл отображается приятно в терминале, но любопытно, не в Firefox. –  Whatsit 28 May 2009 в 19:16
  • 2
    да, я на самом деле встретился с тем же самым :-/... когда я попробовал therek' s предложение, я получил вопросительный знак –  theman_on_osx 28 May 2009 в 20:02
  • 3
    $LANG просто говорит Вам, что Ваша система будет использовать при записи в stdout/stderr. Это doesn' t говорят что-либо о возможностях терминала. Однако, если все Ваша системная печать странных взглядов символов хорошо, затем Ваш терминал, вероятно, поддерживает UTF-8. –  Epcylon 28 May 2009 в 20:58

Самый хромой путь: выполненный после и проверка вывод. Это будет капитал O с циркумфлексом если дисплеи терминала UTF-8.

perl -le 'print "\x{c3}\x{94}"'
5
ответ дан 2 December 2019 в 20:03
  • 1
    I' m вполне уверенный мой терминал поддерживает UTF-8 теперь (прошел тест, предложенный theman_on_osx), но это справедливые выводы пустая строка. What' s продолжение? –  Whatsit 28 May 2009 в 19:19
  • 2
    Возможно, шрифт you' использование ре в Вашем терминальном приложении не поддерживает символы UTF-8. –  therek 28 May 2009 в 21:13

Большая часть верного способа состоит в том, чтобы использовать команду 'локали'. Это распечатает все различные и различные переменные, которые диктуют что набор символов использовать. Например, это - мой вывод на RHEL5.3, набор, чтобы только использовать UTF-8 по умолчанию.

LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_ALL=
2
ответ дан 2 December 2019 в 20:03

Можно просто использовать следующую команду:

locale charmap
1
ответ дан 2 December 2019 в 20:03
UTF=$(echo -e "\u263A")
if [[ ! "$UTF" =~ "A" ]]  ; then
 echo -n "UNICODE here!"
fi
-1
ответ дан 2 December 2019 в 20:03

Введите это в свой терминал:

echo -e '\xe2\x82\xac' 

Если ваш терминал поддерживает UTF-8, он выведет знак евро:

20
ответ дан 2 December 2019 в 20:03
curl http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-demo.txt

или

wget -O - http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-demo.txt

Очевидно, для этого требуется wget или curl .

1
ответ дан 2 December 2019 в 20:03

Теги

Похожие вопросы