現象:WINDOWS上傳文件到LINUX后,中文文件名亂碼,中文內容亂碼
解決:首先考慮到的應該是字符編碼不一致導致,其次再看是否沒安裝中文包
1:檢查是否安裝convmv工具
[oracle@result tmp]$ rpm -qa |grep convmv
convmv-1.15-2.el6.noarch
說明已經安裝,如沒安裝則 yum -y install convmv
2:轉換文件名格式為utf-8,正確顯示
[oracle@result tmp]$ ls
expdp_err.txt ntp.log test ??Ϸ?淶.txt
[oracle@result tmp]$ convmv -f gbk -t utf8 -r --notest /tmp/??Ϸ?淶.txt
mv "/tmp/ԎϷ¹淶.doc" "/tmp/游戲規范.doc"
Ready!
[oracle@result tmp]$ ls
expdp_err.txt ntp.log test 游戲規范.txt
上面是指定文件名轉換,如果不加文件名,則轉換/tmp下面的所有文件名格式為utf8
3:轉換游戲規范.doc里面中文內容的編碼
[oracle@result tmp]# iconv -f gbk -t utf8 游戲規范.txt >游戲規范_utf8.txt
ps:
[oracle@game2 ~]$ rpm -qa |grep -i chinese
[oracle@game2 ~]$ echo $LANG
en_US.UTF-8
上面查詢不到中文包,但實際上依然可以顯示中文漢字內容
[oracle@game2 ~]$ vim aa.txt --復制一些漢字進去
[oracle@game2 ~]$ cat aa.txt