如题。这两天深为解压乱码问题所困,主要原因是Windows简体中文系统下压缩zip文件默认采用GB2312编码,而Linux默认采用UTF-8编码,直接使用unzip解压会造成乱码。stfw后得到解决方案"unzip使用-O选项指定编码",但这个功能需要打补丁获得,我在我使用的发行版的软件仓库中暂未找到有关官方包(OBS中可能有,不过不优先考虑使用)。
此时(查阅openSUSE中文论坛和ArchWiki)发现了Unarchiver,在Linux下可以使用其CLI工具unar和lsar,有自动检测编码功能。试用一下,解压使用GB2312编码的.zip文件,没有乱码问题。另外如果自动检测功能失效,还可以用-e选项来指定编码。支持多种压缩文件格式。
改善生活!
*注意unar和unrar是不同的东西,不要混为一谈