1. 程式人生 > >windows文件復制到linux亂碼 -解決方法

windows文件復制到linux亂碼 -解決方法

windows文件復制到linux亂碼


從linux往 windows拷貝文件或者從windows往Linux拷貝文件,有時會出現中文文件名亂碼的情況,出現這種問題的原因是因為,windows的文件名 中文編碼默認為GBK,而Linux中默認文件名編碼為UTF8,由於編碼不一致,所以導致了文件名亂碼的問題,解決這個問題需要對文件名進行轉碼。
在Linux中專門提供了一種工具convmv進行文件名編碼的轉換,可以將文件名從GBK轉換成UTF-8編碼,或者從UTF-8轉換到GBK。

如下是詳細操作:

[root@chy01 images]# ls
???_20170808142307.png                bg_1.png  icon10.png  n1.png                   QQ??20170808124717.png
20170814_3089106_1_1020482_30008_0.JPG  bg_2.png  icon11.png  n2.png                   QQ??20170808124835.png
20170814_3089107_2_1020482_30008_0.JPG  bg_3.png  icon1.jpg   n3.png                   QQ??20170808125029.png
20170814_3089108_3_1020482_30008_0.JPG  bg_4.png  icon2.png   n4.png                   QQ??20170808125556.png
2017082301.JPG                          bg_5.png  icon3.png   n5.png                   SS1-1.png
2017082302.JPG                          bg_6.png  icon4.png   nav_ico.png              ss1-2.png
2.jpg                                   bg_7.jpg  icon5.png   peixuntu.jpg             ss1.png
333.png                                 bg_9.jpg  icon6.png   ?????.png               transparent.gif
444.png                                 f1.jpg    icon7.png   ??????.png              xztb01.png
about2_wpsA087.tmp.png                  f2.jpg    icon8.png   ??????.png              xztb.png
about2_wpsA088.tmp.jpg                  f3.jpg    icon9.png   ??????.png              ziliaoxiazai.png
about2_wpsA089.tmp.jpg                  f4.jpg    logo 1.jpg  ????????.png             ??????.png
about2_wpsA08A.tmp.png                  f5.jpg    logo2.jpg   QQ??20170808105711.png
about3_wps8BA0.tmp.png                  gywm.jpg  logo.png    QQ??20170808124354.png
(如上查看時有很多的亂碼)
[root@chy01 wwwroot]# yum install -y convmv.noarch 
(需要安裝這個包)
[root@chy01 test.com]# convmv -f gb2312 -t UTF-8 --notest -r  Assets 
mv "Assets/t/±¨±ls"	"Assets/t/考試報名表.xls"
mv "Assets/t/.rar"	"Assets/t/考試模擬器.rar"
mv "Assets/t/′.png"	"Assets/t/代理證.png"
mv "Assets/t/±¨±).xls"	"Assets/t/考試報名表(1).xls"
mv "Assets/upload/QQ20170809100124.png"	"Assets/upload/QQ截圖20170809100124.png"
mv "Assets/upload/3jpg"	"Assets/upload/xx.jpg"
mv "Assets/upload/ˉ.jpg"	"Assets/upload/xx.jpg"
mv "Assets/upload/a′jpg"	"Assets/upload/xxx.jpg"
mv "Assets/upload/1.jpg"	"Assets/upload/xxx.jpg"
mv "Assets/upload/aμ聦.jpg"	"Assets/upload/xxx.jpg"
Ready!
如上就是用convmv來解決的,如下是它的語法介紹:
命令使用:
格式:convmv -f 源編碼 -t 新編碼 [選項] 文件名/目錄名
GB2312->UTF-8
1
2
convmv -f gb2312 -t UTF-8 --notest -r 目錄
convmv -f gb2312 -t UTF-8 --notest 測試.txt
(說明windows中默認的是gb2312 需要轉換為linux中的utf-8,命令解釋:
-f 參數是指出轉換前的編碼;
-t 是轉換後的編碼;
-r 遞歸處理子文件夾;
--notest 真正進行操作,請註意在默認情況下是不對文件進行真實操作的,而只是試驗)

希望看過的童鞋多多指教,謝謝!技術分享技術分享

windows文件復制到linux亂碼 -解決方法