Gzip 标准输入

Gzip 标准输入

为什么这些命令行没有任何差异(输出文件大小)?

Gzip 标准输入

即使压缩级别不同,输出文件也具有相同的文件大小

tar ... | gzip -c -1 > ...
tar ... | gzip -c -9 > ...

xz 标准输入

即使压缩级别不同,输出文件也具有相同的文件大小

tar ... | xz -c -1 > ...
tar ... | xz -c -9 > ...

压缩包

即使压缩级别不同,输出文件也具有相同的文件大小

GZ_OPT=-1 tar -zcf ...
GZ_OPT=-9 tar -zcf ...

xz

即使压缩级别不同,输出文件也具有相同的文件大小

XZ_OPT=-1 tar -Jcf ...
XZ_OPT=-9 tar -Jcf ...

答案1

gzip 压缩级别不保证较高的压缩级别会导致较小的输出。事实上,我的man gzip笔记中的“BUGS”部分表明,在某些情况下情况可能恰恰相反。

对于 xz(和 bzip2),这甚至有更多记录,因为根据手册,数字级别控制压缩器使用的内存量。使用更多内存应该可以实现更好的压缩,但这同样不能保证。

特别是如果您的测试数据很小,那么具有相同大小的输出对我来说并不奇怪。

相关内容