1 问题描述

直接

unzip xxx.zip

乱码,肯定是编码问题了不用问。但是unzip没有指定编码的选项:
在这里插入图片描述
网上的解决方案如下:

unzip -O GBK/GB18030CP936  xx.zip

但是没有-O选项啊。

2 解决办法

解决办法是安装unzip-iconv,笔者系统为manjaro,直接安装会提示会与unzip冲突:
在这里插入图片描述
unzip-iconv是一个补丁,但是好像没被官方接纳,比如Ubuntu下的unzip是带-O的,Archlinux与CentOS下默认没带,安装unzip-iconv即可,也可以在保留unzip的基础上打上unzip-iconv补丁包,参照这里
安装后,可以先指定编码列出看看:

unzip -O gbk -l xxx.zip

在这里插入图片描述
这里编码可以用小写,有一个小的bug是,先写-O选项的话,后面的压缩包文件名补全不了,目前笔者还没有找到好的解决办法(不知道你们的会不会这样,反正笔者的补全不了),所以,先-l补全写上文件,再移动到前面加上-O选项。
列出文件没问题的话,解压就行了:

unzip -O gbk -d folder xxx.zip

-d指定解压目录,如果没加目录的话,直接unzip会把所有文件解压到当前目录。

版权声明:本文为6b7b5fc3原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/6b7b5fc3/p/12868220.html