在windows下压缩打包的zip文件用的是gb2312的编码格式,在linux下解压缩后出现乱码的情况,linux下默认是utf-8的。
下载7z解压软件yum install p7zip convmv
解压:LANG=C 7za x your-zip-file.zip
转码:convmv -f GBK -t utf8 --notest -r .
第一条命令用于解压缩,而LANG=C表示以US-ASCII这样的编码输出文件名,如果没有这个语言设置,它同样会输出乱码,只不过是UTF8格式的乱码(convmv会忽略这样的乱码)。
第二条命令是将GBK编码的文件名转化为UTF8编码,-r表示递归访问目录,即对当前目录中所有文件进行转换。
说明:
出处链接:http://www.zhihu.com/question/20523036/answer/35225920
作者:Latm Ake
来源:知乎