За последние несколько лет были некоторые системы Linux, которые выводили странные символы при выполнении различных команд. Вот пример моего вывода из sensors
команда на одной из этих машин:
acpitz-virtual-0
Adapter: Virtual device
temp1: +45.5°C (crit = +126.0°C)
coretemp-isa-0000
Adapter: ISA adapter
Core 0: +44.0°C (high = +100.0°C, crit = +100.0°C)
Core 1: +45.0°C (high = +100.0°C, crit = +100.0°C)
nouveau-pci-0100
Adapter: PCI adapter
temp1: -62.0°C (high = +95.0°C, crit = +99.0°C)
Обратите внимание на Â
характер повсюду. Почему это происходит в одних средах, а в других - нет? Что я могу сделать, чтобы это исправить?
Либо используйте программу терминала, которая понимает UTF-8, либо скажите своей оболочке не использовать UTF-8 через $LANG
.
>>> print u'°'.encode('utf-8').decode('latin-1')
°
Вы должны установить свой языковой стандарт на C:
export LC_ALL=C