MAC系统下unzip解压中文文件名乱码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MAC系统下unzip解压中文文件名乱码相关的知识,希望对你有一定的参考价值。

参考技术A 本文记录如何解决MAC系统下unzip解压中文文件名乱码的问题

在MAC系统上使用的大多数unzip版本不支持指定编码格式,因此unzip在解压时只能使用MAC系统默认的编码格式。

大多数人是在Windows下压缩文件,此时采用的编码格式一般为GBK和GB2312,如果MAC系统不支持上述两种格式,便会导致中文文件名乱码问题。

安装unar,其可指定编码格式进行解压。

[1] Mac下unzip解压文件名乱码问题
[2] Mac下unzip解压文件名乱码问题----亲测经过的
[3] Linux解压神器之unar

unzip解压中文乱码

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会把所有文件解压到当前目录。

以上是关于MAC系统下unzip解压中文文件名乱码的主要内容,如果未能解决你的问题,请参考以下文章

Linux系统解压Mac发送过来的zip文件出现中文乱码问题解决

Linux系统解压Mac发送过来的zip文件出现中文乱码问题解决

linux 中 解压 unzip 中文乱码解决办法

mac系统下为emacs设置中文字体,解决乱码问题

Linux Mac解压乱码问题

unzip解压中文乱码