[转载][Linux]fedora下命令行中文字符乱码问题

原文链接:http://blog.csdn.net/bianzhuang09/article/details/6553911

用了一段时间fedora 14,今天不知道怎么回事终端显示中文字符老是出现乱码,为这个问题纠结了几个小时,总算解决了,google一下发现大多数朋友都遇到过这个问题。仔细了看了几篇帖子,实验了多次总算又正常了。读者可以自己用locale  -a命令查看系统支持那些编码字符集,本人的fedora14如下

...

zh_CN
zh_CN.gb18030
zh_CN.gb2312
zh_CN.gbk
zh_CN.utf8
....,其中zh表示中国,CN表示大陆,点后面表示字符集,其中gb18030为汉字国家标准编码字符集,utf8为 Unicode编码(Unicode的实现方式称为Unicode转换格式(Unicode Translation Format,简称为 UTF),当然还有大家熟知的ASCCI编码等等。读者使用locale命令时,会出现下面这些宏,我的设置如下:

LANG=en_US.utf8
LC_CTYPE="en_US.utf8"
LC_NUMERIC="en_US.utf8"
LC_TIME="en_US.utf8"
LC_COLLATE="en_US.utf8"
LC_MONETARY="en_US.utf8"
LC_MESSAGES="en_US.utf8"
LC_PAPER="en_US.utf8"
LC_NAME="en_US.utf8"
LC_ADDRESS="en_US.utf8"
LC_TELEPHONE="en_US.utf8"
LC_MEASUREMENT="en_US.utf8"
LC_IDENTIFICATION="en_US.utf8"
LC_ALL=

这些宏用来定义用户环境的字符编码方式。也可以将这些宏定义在/etc/profile或者$HOME/.bash_profile文件来指定特定的字符集是对所有用户有效还是针对某一用户有效。还有两个配置文件/etc/sysconfig/i18n和/etc/environment这两个文件可以定义前面所讲的那些宏,选择某一字符集。但读者的界面出现乱码要仔细检查这些文件看时候配置正确。有一点要注意的是,虽然有两个配置文件,但系统是先读取/etc/sysconfig/i18n文件,然后在读取/etc/environment文件,所以两个文件中以/etc/environment文件有效。这一点正是我犯的错误!顺便提一下,对于putty显示中文为乱码的问题,读者可以先在putty设置window->Translation->UTF-8,然后再启动putty连接主机,先locale看设置的字符集是否为UTF-8型的,我的主机是zh_CN.UTF-8,故我在putty客户端也设置为一样,即export LANG=zh_CN.UTF-8即可

posted on 2014-01-11 23:03  南京大乱炖  阅读(1637)  评论(0编辑  收藏  举报

导航