现象说明:在windows下编辑的内容,上传到linux平台下出现中文乱码。如下:
在windows平台编写haha.txt文件,内容如下:
上传到linux平台,出现中文乱码,如下:
基本上面出现的问题,有如下两种解决办法:
1)使用windows平台的"记事本"软件编辑haha.txt文件,将字符集改为"UTF-8"
按Win键+run出现"运行",在里面输入"notepad"即可打开记事本。然后"文件"->"打开" haha.txt文件,将下面一栏的编码改为"UTF-8",然后将之前编辑的内容覆盖到新的UTF-8编码的haha.txt文件
再次上传到linux平台下,查看就不会出现中文乱码了!
2)在linux平台上用iconv命令纠正中文乱码
[root@test-vm01 ~]# cat haha.txt
°???????????asdfsadf
°?????????????????
[root@test-vm01 ~]# iconv -f gbk -t utf8 haha.txt > haha.txt.utf8
[root@test-vm01 ~]# cat haha.txt.utf8 > haha.txt
[root@test-vm01 ~]# cat haha.txt
阿斯蒂芬撒打发似的fasdfsadf
阿斯蒂芬考虑实际负担:我去
----------------------------------------------------XShell连接CentOS后,终端显示中文乱码问题的解决方法------------------------------------------
使用U盘往Windows主机、Linux主机传文件是经常的事,但有时文件名有中文,传到Linux机器会有乱码,选择起来也很麻烦,下面简单说下应对方法:
解决办法:
一般这种问题是文件的编码字符集、Shell编码字符集、XShell编码字符集不匹配,设置匹配基本就OK了。
临时办法
1)简体中文的Windows一般使用GB字符集,这里将XShell设置为GBK
2) Linux主机
[root@AppServer1 ~]# export LANG=zh_CN.gbk
或者
[root@AppServer1 ~]# vim /etc/sysconfig/i18n
LANG=zh_CN.gbk
[root@AppServer1 ~]# source /etc/sysconfig/i18n
再试,就可以正常显示中文了。不过以上设置只对当前shell连接生效,新开的shell还是用的原来的设置。
永久生效
1) XShell属性设置
2) Linux环境变量设置
[root@AppServer1 ~]# vim /etc/profile
export LANG=zh_CN.gbk //在末尾追加