linux中文乱码解决方法

本文以Fedora 17为例子,其它系统可以找对应的命令和文件,以下方法几乎全部需要注销,才能生效。

1.  xwindows下乱码

编辑/etc/sysconfig/i18n 或者 /etc/locale.conf

写入:

LANG=en_US.utf8 (这行是设置桌面显示语言,zh_CN.utf8或者zh_CN.gbk可以设置成汉语)

SUPPORTED="zh_CN.GB13030:zh_CN.GB2312:zh_CN.GBK:zh_CN.utf8:zh_TW.BIG5..." (注意这里省略号的意思是你还可以继续添加支持的语言,如en_US.utf8,如果要查询你安装的语言,可以在终端输入>locale -a)

SYSFONT=“lat0-sun16" (这行是设置系统显示的字体)

2. 控制台乱码

安装zhcon,zhcon不能运行在xwindows的终端下。

>yum install zhcon

然后Ctrl+Alt+Fx切换到控制台,登录之后

>zhcon --utf8

3. root用户中文显示终于正常了,普通用户不能显示

这是普通用户对字体使用权限的问题,fedora的字体保存在/usr/share/fonts下(Ubuntu下貌似不同),所以在终端输入以下命令

>chown -R yourusername /usr/share/fonts (把yourusername替换成不能显示中文的普通用户)

>chmod -R 755 /usr/share/fonts

4. 有些从Windows拷贝过来的文档,或者网上下载的文档,可能是乱码

原因是Windows默认汉字编码是GB2312,Fedora以及其它Linux几乎都是默认为UTF-8的。所以需要转换文件编码

>iconv -f gbk -t utf-8 xxx > yyy

-f后面跟当前的编码,-t后面跟要得到的编码,xxx是当前文件名,yyy是转换后的文件名。如果你不知道原文件的编码,可以用vi打开,然后用vi的命令

:set fileencoding 查看。如果你安装了enca

>enca xxx

就可以查看xxx的编码。

>enca -L currentlanguage -x targetencoding filename

可以转换编码。如
>enca -L zh_CN -x utf-8 *

5. 文件名乱码

先安装convmv,然后

>convmv -f gbk -t utf-8 *

与iconv用法类似。




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值