windows平臺下編輯的內容傳到linux平臺出現中文亂碼的解決辦法

散盡浮華發表於2017-10-24

 

現象說明:在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       //在末尾追加

相關文章