man 报错 iconv: 未知 1799 处的非法输入序列

在vi或者shell中执行man的时候报错,如下:

[root@localhost root]# man srand
iconv: 未知 1799 处的非法输入序列
(END)

从http://bbs.chinaunix.net/thread-879247-1-1.html找到解决方法为 export LANG=en_US.UTF-8

看看自己的环境变量,果然不同。

[root@localhost root]# set | grep LANG
LANG=zh_CN.GB18030
LANGUAGE=zh_CN.GB18030:zh_CN.GB2312:zh_CN

执行export LANG=en_US.UTF-8,这样修改后确实可用man了。蛋是,蛋是,这样修改后,终端的中文显示又不正常鸟...(没办法,这个项目代码中的注释是中文的 )

为了确保中文显示和man都成正常显示, 修改i18n的LANG为zh_CH.UTF-8

vi /etc/sysconfig/i18n

#LANG="zh_CN.GB18030"
LANG="zh_CH.UTF-8"
然后source /etc/sysconfig/i18n 或重新登陆。

OK, man和中文显示都正常了...


[email protected]




 





你可能感兴趣的:(Linux,C/C++)