xshell(xshell5)以及其他终端中文乱码的原因无非有三种
(1)Linux系统的编码问题
(2)xshell终端的编码问题
(3)两端的语言编码不一致
1、Linux系统的编码问题
(1)执行locale命令查看系统语言 (2)设置系统环境变量 LANG为en_US.UTF-8: export LANG=en_US.UTF-8 或者编辑文件:vim /etc/sysconfig/i18n
2、xshell终端的编码问题
设置为Unicode (UTF-8):
File->Properties
这里写图片描述
3、两端的语言编码不一致
如果上述操作后,还是有中文乱码问题,比如中文文件名、cat包含中文的文件等,说明属于第3类问题
要么修改Linux环境变量LANG,要么修改xshell终端编码:
File->Properties 修改为Chinese Simplified (GB2312)
并确定LANG为en_US.UTF-8 或 en_US
4、如果进行了以上设置,仍然中文显示乱码,退出并重新登录系统,再次进行以上设置,确认更改设置并进行结果验证,gb2312/gbk/gb18030 to utf-8使用如下命令将编码为gb18030的file1转化为编码为utf-8的file2:
iconv -f gb18030 -t utf-8 file1 > file2 有的系统没有gb18030字符集的支持,这个时候可以用: iconv -f gbk -t utf-8 file1 > file2 或者: iconv -f gb2312 -t utf-8 file1 > file2 iconv -f gb2312 -t utf-8 file1 -o file2 反之,可以这样转换: iconv -f utf-8 -t gb18030 file2 > file1 或者: iconv -f utf-8 -t gbk file2 > file1 或者: iconv -f utf-8 -t gb2312 file2 > file1