测试一下Linux的常用压缩软件,压缩一个1.1G的tar包,用的都是最大压缩率。
测试脚本:
source_file=linux-5.15.5.tar
time zip -9 $source_file.zip $source_file
time gzip -k9 $source_file
time xz -zk9 $source_file
time bzip2 -k9 $source_file
测试结果:
real 1m8.055s
user 1m7.456s
sys 0m0.588s
real 1m3.416s
user 1m2.876s
sys 0m0.540s
real 10m58.214s
user 10m51.904s
sys 0m6.296s
real 1m54.338s
user 1m53.880s
sys 0m0.456s
压缩后文件大小:
zip: 187M
gz: 187M
xz: 116M
bz2: 142M
可以看到zip和gz用时差不多,压缩后几乎一样大。
bz2用时居中,压缩率也居中。
xz用时最多,压缩的也最多。
相对zip和gz:
bz2多用68%时间,压缩了24%。
xz多用了968%时间,压缩了38%。
xz压缩率最好,但用时接近zip的10倍。
Linux的源码还是用的xz压缩的,毕竟网络传输很费时,文件越小越好。