Linux下zip文件解压乱码

Linux下zip文件解压乱码

#这是zip格式的缺陷,zip文件格式中没有字段标志出文件名的编码格式。Windows下生成的zip文件中的编码是GBK/GB2312等,而linux下的默认编码格式为UTF-8,所以才会出现乱码。
#解决办法一(使用unzip解压的时候,指定字符集,需要unzip支持,有些unzip命令不支持大O选项,自己可以安装较新的unzip版本):
    unzip -O CP936 test.zip
#解决办法二(借助于p7zip和convmv)
    yum install p7zip convmv	#centos安装
    apt-get install p7zip convmv    #ubuntu安装
    LANG=C 7za x your-zip-file.zip	#用于解压缩,而LANG=C表示以US-ASCII这样的编码输出文件名,如果没有这个语言设置,它同样会输出乱码,只不过是UTF8格式的乱码(convmv会忽略这样的乱码)。
    convmv -f GBK -t utf8 --notest -r .	#将GBK编码的文件名转化为UTF8编码,-r表示递归访问目录,即对当前目录中所有文件进行转换。
#解决办法三
    export LANG=zh_CN.UTF-8
    unzip test.zip
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值