.lzma、.7z和.xz分别是三种文件格式的后缀名,它们对应三种不同的文件结构。文件结构相当于容器,把LZMA算法压缩后的数据包装起来,然后添加上魔术字、校验码、压缩元信息、文件夹结构等信息。
.xz和.lzma一样,只能压缩一个文件。它们需要和打包工具tar一起使用才能把多个文件压缩成一个文件。而.7z这种更复杂的文件结构可以包含多个文件或文件夹的压缩数据。
由于.xz的压缩元信息存储在头部,而压缩数据存储在元信息后面,所以.xz格式可以支持流式解压缩。相反,.7z把压缩元信息存储在尾部,而压缩数据在元信息的前面,所以.7z不适合流式解压缩。
应用程序:7-Zip是最早的项目,它是windows上类似winrar的一个软件。作者把7-Zip的部分代码开源出来成为LZMA SDK。7-Zip软件支持的文件格式较多,包括默认的.7z以及.lzma和.xz。p7zip是7-Zip移植到 POSIX-like 系统(比如Linux)上的命令行软件。LZMA Utils是 POSIX-like 系统上的另一个命令行软件。它基于LZMA SDK开发,只支持.lzma格式。XZ Utils是LZMA Utils的继承者。支持.xz和.lzma格式。xz和gzip的性能对比:用xz和gzip对文