小编Anu*_*ush的帖子

有任意大字典的压缩工具吗?

我正在寻找具有任意大字典(和“块大小”)的压缩工具。让我通过例子来解释。

首先让我们创建 32MB 的随机数据,然后将其连接到自身以制作长度为 64MB 的两倍长度的文件。

head -c32M /dev/urandom > test32.bin
cat test32.bin test32.bin > test64.bin
Run Code Online (Sandbox Code Playgroud)

当然test32.bin不可压缩,因为它是随机的,但前半部分和后半部分test64.bin是一样的,所以应该可以压缩大约 50%。

首先让我们尝试一些标准工具。test64.bin 的大小正好是 67108864。

  • gzip -9。压缩大小 67119133。
  • bzip2 -9。压缩大小 67409123。(开销很大!)
  • xz -7。压缩大小 67112252。
  • xz -8。压缩大小 33561724。
  • zstd --ultra -22。压缩大小 33558039。

我们从中了解到 gzip 和 bzip2 永远不能压缩这个文件。然而,使用足够大的字典 xz 和 zstd 可以压缩文件,在这种情况下, zstd 做得最好。

但是,现在尝试:

head -c150M /dev/urandom > test150.bin
cat test150.bin test150.bin > test300.bin
Run Code Online (Sandbox Code Playgroud)

test300.bin 的大小正好是 314572800。让我们在最高设置下再次尝试最佳压缩算法。

  • xz -9。压缩尺寸 314588440
  • zstd --ultra -22。压缩尺寸 314580017

在这种情况下,两个工具都不能压缩文件。

有没有一个工具可以有任意大的字典大小,所以它可以压缩像 test300.bin 这样的文件?


感谢评论和回答,结果证明 zstd 和 …

compression gzip bzip2 xz zstd

7
推荐指数
1
解决办法
741
查看次数

我在哪里可以找到威尔士语单词表?

我正在我的 Ubuntu 系统上寻找威尔士语单词列表。apt-file search /usr/share/dict/不显示选项。但是aspell-cy确实存在。官方描述是“这个包包含了为 GNU Aspell 拼写检查器添加对威尔士语言的支持所需的所有文件。” 我已经安装了它,但找不到它应该使用的单词列表。

我在哪里可以找到威尔士语单词表?

aspell dictionary

4
推荐指数
1
解决办法
97
查看次数

标签 统计

aspell ×1

bzip2 ×1

compression ×1

dictionary ×1

gzip ×1

xz ×1

zstd ×1