根本原因是Windows默认用GBK编码存文件名,而麒麟系统解压工具默认按UTF-8解码。解决方法:一、unzip -O GBK解压;二、配置UNZIP="-O GBK"环境变量并重启;三、升级engrampa至1.24.0;四、改用360压缩Linux版;五、Windows端用7-Zip设UTF-8编码压缩。

如果您在银河麒麟V10系统中解压Windows生成的ZIP压缩包,发现中文文件名显示为乱码,则根本原因是Windows默认使用GBK编码存储文件名,而麒麟系统中的解压工具(如unzip或engrampa)默认按UTF-8解码,造成编码错配。以下是解决此问题的步骤:
一、使用unzip命令指定GBK编码解压
该方法通过命令行强制告知unzip工具压缩包内文件名采用GBK编码,避免默认UTF-8误解析,从而正确还原中文名称。
1、打开终端,进入压缩包所在目录。
2、执行命令:unzip -O GBK your_archive.zip。
3、如需解压至指定文件夹,追加-d参数:unzip -O GBK your_archive.zip -d /path/to/target。
4、若GBk无效,可尝试替换为CP936或GB18030。
二、配置UNZIP环境变量永久生效
该方法将-O GBK参数设为unzip命令的默认行为,后续所有unzip操作无需重复输入编码选项,适用于频繁处理Windows压缩包的用户。
1、使用sudo权限编辑系统环境配置文件:sudo vim /etc/environment。
2、在文件末尾新增两行:UNZIP="-O GBK"和ZIPINFO="-O GBK"。
3、保存并退出编辑器(按Esc后输入:wq回车)。
4、执行reboot重启系统使配置生效。
三、升级或重装engrampa归档管理器
系统自带的engrampa在V10-SP1-2403等版本中存在对GBK编码识别缺陷,升级至1.24.0及以上版本可修复ZIP中文名解析逻辑。
1、联网环境下执行:sudo apt install --reinstall engrampa。
2、若系统为离线环境,需预先获取对应架构(amd64/arm64)的engrampa_1.24.0.deb安装包。
3、将deb包置于目标目录,在空白处右键打开终端,运行:sudo dpkg -i *.deb。
4、安装完成后如提示依赖缺失,执行:sudo apt --fix-broken install。
四、改用360压缩Linux版图形化解压
360压缩Linux版内置编码自动识别机制,能主动检测并适配GBK、UTF-8等多种文件名编码,无需手动干预,适合不熟悉命令行操作的用户。
1、打开麒麟软件商店,搜索360压缩。
2、点击安装,等待完成。
3、右键点击Windows生成的ZIP文件,选择“使用360压缩打开”。
4、在360压缩界面中点击“解压到当前文件夹”或指定路径即可。
五、在Windows端统一使用UTF-8编码压缩
从源头规避编码冲突:在Windows侧创建ZIP时即采用UTF-8编码存储文件名,使麒麟系统可直接按默认方式解压,无需额外配置。
1、在Windows中安装支持UTF-8 ZIP的工具,例如7-Zip 22.01或更高版本。
2、选中待压缩文件,右键→“7-Zip”→“添加到压缩包…”。
3、在弹出窗口中,点击“高级”选项卡,点击“设置字符编码”按钮。
4、在编码列表中选择UTF-8,确认后点击“确定”开始压缩。

















