共计 699 个字符,预计需要花费 2 分钟才能阅读完成。
导读 | zip 是最拉的,连文件名编码都不保存,Windows 上的 zip 包拿到 Linux 上 unzip 解压会乱码。 |
7z 是一个俄罗斯 Windows 程序员开发的,代码是开源的,压缩算法 LZMA 也是开源的,官方没有直接提供 Linux 支持。第三方在 Linux 上的实现叫做 xz,算法用的也是 LZMA,但貌似不支持多线程,速度不如 Windows 上的 7z。7z 解压后的文件名不会乱码。Linux 上通过 Wine 也可以良好运行 7z 图形客户端。
另外还有一个第三方的实现叫做 p7zip,还支持解压 rar 文件,而且不乱码,Debian 系 Linux 上这样安装:
sudo apt install p7zip p7zip-full p7zip-rar
。
sudo apt install p7zip p7zip-full p7zip-rar
Linux 上为保留文件属性,一般压缩前先打包成 tar,然后一般用 gzip、bzip 或者 xz 进行压缩,gzip 压缩率最低,但速度最快,贵在均衡,所以用得最多。
网友:” 平章芯事 ” 先生说得很对,乱码不是 Linux 也不是压缩软件的事。前几天遇到一件事,就是提供打包下载用户上传的文件。服务器是 Linux,压缩当然使用 zip 了,Linux 下好好的,跑到 windows 下解压缩就乱码。文件是 windows 机上上传的,怎么会乱?呵呵,浏览器的功劳,把文件名自动转换成了 UTF- 8 编码了。打包时判断一下客户端操作系统,是 windows 就在压缩时把文件名转换成 GBK 编码。完美解决问题。搞过 Web 设计的人应该都清楚吧。
正文完
星哥说事-微信公众号
![post-qrcode](https://www.xgss.net/wp-content/uploads/2023/07/二维码-微信公众号256x256.jpg)