(linux笔记)Ubuntu下zip解压中文乱码的原因以及解决办法

it2025-09-13  1

解压中文乱码发生的情况

出现问题的环境是在win10上用虚拟机VMware跑Ubuntu18.04时尝试把windows下的zip文件放到共享文件下用shell的zip命令进行解压。

经过尝试发现,直接在Windows下,在共享文件中创建中文的文件夹给予压缩,不会出现Ubuntu解压乱码;但是在共享文件夹以外的地方创建中文文件夹给予压缩,会出现ubuntu解压乱码。

在网上找到的解决办法:

**方法1**:在命令行中解压文件设置参数 通过unzip行命令解压,指定字符集 unzip -O CP936 xxx.zip (用GBK, GB18030也可以) **方法2**:修改设置环境 在命令行中输入下面命令,vim打开环境设置 $sudo vim /var/lib/locales/supported.d/local 然后编辑,添入下面的中文字符集 zh_CN.GBK GBK zh_CN.GB2312 GB2312 zh_CN.GB18030 GB18030 保存退出vim 使其生效: sudo dpkg-reconfigure --force locales 这样修改完后,使用右键提取文件还是会中文乱码的,但是在命令行中使用命令解压文件就不会乱码了。 **方法3**:替换文件 在ubuntu10.04下用gnome自带的归档管理器 解压windows下压缩的zip文件,中文会出现乱码。 将压缩包中以7z开头的文件全部复制到/usr/lib/p7zip/目录下, 替换掉原有的文件。这样乱码就解决了。

出于方便,方法一挺好用的,嘿嘿

乱码原因

Windows的默认编码为GBK,Linux的默认编码为UTF-8 两边牛头不对马嘴,要用unzip的-O选项来选择编码格式,就可以解决乱码了。

最新回复(0)