是否有一个搜索实用程序可以二进制分割搜索大型排序(顺序)文本文件?

是否有一个搜索实用程序可以二进制分割搜索大型排序(顺序)文本文件?

是的,我知道这听起来很奇怪。顺序分割和二进制分割不能混合。除非序列是文件本身内的字节偏移量......

我在 bash 脚本中使用dd.对于 8 GB 文件,它的搜索和查找时间为 3-9 秒。所以它可以工作(但比我知道的要慢)...我真的不想抛光这个轮子;我只是喜欢将其作为 bash 的练习(拥有一个项目是学习语言的最佳方式,等等)。我认为这在 C/++ 等中会非常简单......我很好奇看到其他一些例子(特别是 bash 的例子。

答案1

所有基本的文本处理实用程序都旨在充当过滤器,并且大多数旨在将其输入作为流进行处理(即读取一点输入,处理它,写入相应的输出,重复)。dd从它的语法和它提供的选项来看,它有点不寻常。dd是唯一的 shell 接口lseek,正如您所注意到的,它很笨拙。当您达到这一点时,就该切换到更强大的脚本语言,例如 Perl 或 Python。

相关内容