小编Bre*_*ter的帖子

如何使用 Linux 排序实用程序按固定字节偏移量对二进制键值对进行排序?

我想对一个 20GB 的二进制文件进行排序,该文件包含以连续方式放置的 30 字节键和 20 字节值。一切都在一条线上。我想指定排序必须用于比较的键长度和记录大小。这样,当键移动时,与其关联的值也会移动。

理想情况下,我不想以任何方式修改文件(即在键和值之间添加分隔符)。该文件看起来像KVKVKVKVKVKV. 单行二进制文件。

20GB 文件的前 200B 的 Hexdump:

# hexdump -n 200 -C 20gbUnsorted
00000000  54 65 73 74 69 6E 67 31  32 33 65 08 00 60 83 6b  |Testing123e..`.k|
00000010  39 2c d5 8b 8f 5e 55 96  18 55 e7 9b 87 f0 22 83  |9,...^U..U....".|
00000020  a4 66 b6 aa b1 f9 e0 ca  cf 1e 26 b3 29 2a fd 10  |.f........&.)*..| …
Run Code Online (Sandbox Code Playgroud)

sort

4
推荐指数
2
解决办法
909
查看次数

标签 统计

sort ×1