哪种归档方法更适合在Linux上压缩文本文件?


17

在我的应用程序中,我需要对文本文件的日志进行压缩。

似乎bzip2gzip具有相同的压缩率。

那是对的吗?


xz(来自xz-tools或来自p7zip的7z,非常类似于lzma)是最好的。bzip2比gzip更好。
osgx 2011年

Answers:


5

通常,bz2具有更好的压缩率,同时具有更好的可恢复性。

OTOH,gz更快。

据说xz比bz2更好,但是我不知道定时行为。


xz比bzip2慢。
osgx 2011年

xz不仅速度较慢,而且速度要慢得多,300 mb的文件花了大约30秒才能压缩bzip2。在压缩超过5分钟后,我杀死了xz
Tebe

@Копать_Шо_я_нашел我认为这很大程度上取决于您选择的压缩级别。使用-1,它并不是很慢,但是使用默认设置,它往往会很慢。
glglgl

7

maximumcompression.com的最新更新是2011年6月(答案更新于2015年10月)。
因此,此网站未提及
当前全球范围内的冠军文本压缩程序

      cmix

比赛/基准:

详细信息:
拜伦诺尔正在积极深化发展cmix的立足之本的自由报软件(GPL)自2013年起数据压缩的解释马特·马奥尼。Matt Mahoney还维护了上述一些基准,并提出了命令行增量存档器ZPAQWP)。


如果您喜欢更标准的工具(需要更少的RAM),我建议:

      lrzip

lrzip是一种进化rzip康恩·科里瓦斯
lrzip代表两个名称:远程ZIPLzma RZIP
lrzip通常比xz(另一种流行的压缩工具)更好。
亚历山大·里乔(Alexander Riccio)也建议lrzip


我最喜欢的是:

      zpaq

“存档专家”马特·马奥尼,已加紧工作的PAQ算法十年,并提供CPU /内存资源,并压缩级别之间的最佳平衡。

但是,最新zpaq版本通常不打包/提供最新版本 :-(
当我有一台新机器并且我需要一个非常好的压缩器时,我总是从源代码编译它:https : //github.com/zpaq/zpaq

clone https://github.com/zpaq/zpaq
cd zpaq
g++ -O3 -march=native -Dunix zpaq.cpp libzpaq.cpp -pthread -o zpaq



0

bz2具有更严格的压缩,该算法具有更多选项来寻找要压缩的冗余。

gzip提供了更多工具,并且具有更多的跨平台功能。更多Windows工具可以处理.gz文件。它是http的一部分,因此即使Web浏览器也可以理解。

在linux上,有一些工具可让您直接处理压缩文件。zgrep和bzgrep可以搜索压缩文件。

如果仅在Linux上,我将使用bzip2,以获得更好的压缩率。


0

xz的压缩效果比bz2好得多,但需要更多时间。因此,如果最大压缩是您的目标,并且硬盘上的空间非常宝贵(我的情况是一个驱动器的容量为98%-在我重新组织文件系统时),那么您可以启动脚本来完成工作-休息片刻,然后在5分钟内回来。

unxz可以非常迅速地解压缩我的经验-这对我每天都是一件好事。

bz2的压缩速度比xz快,但似乎无法达到xz的压缩结果。

进行这些评估的唯一方法是针对通常会压缩/解压缩的常见文件混合运行基准测试,并更改参数以查看其中最重要的内容。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.