p7zip 和 7-Zip 是什么关系,支持哪些系统?
更新时间
p7zip 是 7-Zip 命令行版本 7za.exe 向 POSIX 系统的移植,运行在 Unix(Linux、Solaris、OpenBSD、FreeBSD、Cygwin、AIX 等)、macOS X,以及 BeOS 和 Amiga 上。它适合需要在类 Unix 环境里用命令行完成高压缩比归档操作的用户;如果你只想要图形界面或 Windows 原生程序,应直接使用 7-Zip 本体。
两者的分工
| 维度 | 7-Zip | p7zip |
|---|---|---|
| 形态 | 文件归档工具,含图形界面与命令行 | 7-Zip 命令行版 7za.exe 的移植 |
| 主要目标平台 | Windows 为主 | POSIX 系统、macOS X、BeOS、Amiga |
| 压缩能力 | 官方描述为最高压缩比的文件归档器 | 沿用同一压缩核心 |
| 字节序支持 | 自 4.10 起支持小端与大端机器 | 自 4.10 起同样支持小端与大端机器 |
关键机制在于:p7zip 不是另起炉灶的重写,而是把 7-Zip 的命令行归档程序搬到类 Unix 平台,因此压缩格式与算法行为与上游保持一致,差异主要体现在运行平台和调用方式上。例如需要在一台 FreeBSD 服务器上通过脚本批量压缩日志目录时,用的就是 p7zip 提供的命令行程序,而不是 Windows 版 7-Zip。
支持的系统
根据站点说明,p7zip 覆盖以下平台:
- Unix 类:Linux、Solaris、OpenBSD、FreeBSD、Cygwin、AIX 等
- macOS X
- BeOS
- Amiga
自 4.10 版本起,p7zip 与 7-Zip 一样同时支持小端和大端机器,这意味着在 AIX、Solaris 等可能存在大端架构的系统上也能运行。
下载与获取方式
官方页面把下载指向 SourceForge 项目页:http://sourceforge.net/projects/p7zip/,源码包和二进制包都在那里获取。
站点还列出了一些非官方打包渠道,适合希望用系统包管理器安装的用户:
| 平台 | 非官方包入口 |
|---|---|
| Amiga | http://amiga.sourceforge.net/?showpackage=p7zip |
| BeOS | http://www.bebits.com/app/4079 |
| Debian | http://adn.diwi.org/debian/,另有 Debian Unstable 包 |
| Fedora Core 1、2、3 | http://timeoff.wsisiz.edu.pl/rpms.html |
| FreeBSD | http://www.freshports.org/archivers/p7zip/ |
| Gentoo Linux | http://packages.gentoo.org/package/app-arch/p7zip |
| Mandrake | http://www.geocities.com/mestiada,另有 Mandrake Cooker |
| Solaris | http://sunfreeware.com/ |
需要注意,这些是第三方维护的包,版本和更新节奏由各打包方决定,与 SourceForge 上的官方发布不一定同步。选择时优先看你的系统是否已有对应仓库入口;没有的话再回到 SourceForge 下载源码或二进制包。
同站的其他项目
p7zip 主页还介绍了两个相关项目,容易与主项目混淆:
- J7Zip:7zr.exe 的 Java 移植。2006-12-10 发布首个公开版本,仅支持解压使用 LZMA 和 BCJ2 过滤器压缩的文件;2007-02-04 起支持 BCJ 过滤器。创建归档、加密、多线程等能力在站点上仍列为待办。
- JAVA LZMA SDK:作者把 LZMA SDK 4.03 的 LZMA 解码器移植到 Java,2005-09-11 又移植了 LZMA C# SDK 4.23 的编码器与解码器。页面提到 Igor Pavlov 后来在官方 LZMA SDK 中直接提供了 Java 版本。
如果你只是想在 Java 环境里读取 7z 压缩数据,J7Zip 是相关选项,但要接受它功能受限、且页面信息停留在较早年份的事实。
判断要点
- 需要 Windows 上的图形化归档工具:用 7-Zip。
- 需要在 Linux、BSD、macOS、Solaris、AIX 等系统上用命令行压缩解压:用 p7zip。
- 需要 Java 侧解压 7z:可了解 J7Zip,但先确认其功能范围是否满足需求。
- 安装前先查系统仓库是否有 p7zip 包,没有再去 SourceForge 取官方包。
站点页面最后修改时间为 2009 年 2 月 21 日,其中的版本号、链接和项目状态反映的是当时情况,实际使用前应以 SourceForge 项目页的当前发布信息为准。