背景说明
我们通过web客户端上传在windows上上传中文文件名的文件到linux服务器上,在linux图形化界面中打开文件所在路径,显示文件名为(无效的编码);在命令行界面输入ls命令发现乱码。
原因
Windows 的文件名中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码,不一致所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码。
解决办法
使用文件名转码工具convmv进行编码转换
安装convmv
yum -y install convmv
转换命令
convmv -f GBK -t UTF-8 --notest -r [目标文件夹父目录]