windows文件复制到linux乱码 -解决方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了windows文件复制到linux乱码 -解决方法相关的知识,希望对你有一定的参考价值。


从linux往 windows拷贝文件或者从windows往Linux拷贝文件,有时会出现中文文件名乱码的情况,出现这种问题的原因是因为,windows的文件名 中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码不一致,所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码。
在Linux中专门提供了一种工具convmv进行文件名编码的转换,可以将文件名从GBK转换成UTF-8编码,或者从UTF-8转换到GBK。

如下是详细操作:

[[email protected] 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
(如上查看时有很多的乱码)
[[email protected] wwwroot]# yum install -y convmv.noarch 
(需要安装这个包)
[[email protected] 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乱码 -解决方法的主要内容,如果未能解决你的问题,请参考以下文章

Windows 上创建的文件,上传到 Linux 服务器,文件名乱码?

困扰很久了,windows主机通过FTP上传文件到linux,文件扩展名乱码

困扰很久了,windows主机通过FTP上传文件到linux,文件名、扩展名乱码

上传文件到linux乱码问题

Linux 中 Windows 中文乱码

CentOS系统下中文文件名乱码