由于编码问题,zip文件中的中文文件在linux下解压会出现乱码linux
若是你使用archlinux那么使用AUR安装unzip-natspec就能够解决这个问题git
https://aur.archlinux.org/packages/unzip-natspec/app
这个时候,使用unzip xxx.zip就能够正确解压文件编码
而后在file-roller归档管理器中操做,中文名称依然是乱码,听说是由于file-roller优先使用p7zipspa
删除p7zip后问题解决code
然而我还想同时可以使用p7zip软件包,谁知道这个问题如何解决?blog
从这里https://git.gnome.org//browse/file-roller/下载代码研究,发现这样的逻辑ip
/* give priority to 7z, unzip and zip that supports ZIP files better. */ if ((strcmp (mime_type, "application/zip") == 0) || (strcmp (mime_type, "application/x-cbz") == 0)) { if (_g_program_is_available ("7z", check_command)) { return capabilities; } if (!_g_program_is_available ("unzip", check_command)) { capabilities |= FR_ARCHIVE_CAN_READ; } if (!_g_program_is_available ("zip", check_command)) { capabilities |= FR_ARCHIVE_CAN_WRITE; } return capabilities; }
这里是写死的,看起来除了给代码打补丁是没什么好办法了it
最后的解决办法,发现AUR中一样存在相似的软件包p7zip-natspecio
https://aur.archlinux.org/packages/p7zip-natspec/
安装这个包应该就能够完美的解决问题吧,由于我已经使用上面的方法解决了问题,就不试这个了