目录树的本地全文索引,是grep -R的更快select

我有一个大的目录树的源文件。 我想search所有这些文件。 我的第一本能是使用grep -Rack ,但是无论哪种方式,他们只是顺序读取所有的文件。

是否有一些轻量级的程序,我可以安装,将扫描所有的文件一次,build立和索引,然后在任何日后我可以search某些单词? 这应该比只是加载grep的更快。 我想search的文件不会改变,所以我不需要自动索引文件的东西。

我不是在寻找能够扫描我的硬盘上的所有文件的东西,而且我想要本地的东西,这些东西很容易在本地台式机上安装和设置,简单的几乎一次性search。

奖励积分如果在正常的Ubuntu软件库的软件。

理想情况下,我想要这样简单易用的东西:

 sudo aptitude install supersearch cd /path/to/where/I/wanna/search supersearch --make-index supersearch "foo bar" 

听起来就像你想要比格犬 。 它的主要目的是作为一个全面的桌面search,但你可以告诉它看看你想索引的源代码树。

我相信Tracker在Ubuntu上是默认安装的。 做man trackerdman tracker-search更多的信息。

trackerd手册页:

默认情况下,trackerd将索引用户主目录中的所有文件
(隐藏文件除外)。 这可以被speci-
search一个或多个目录,而不是在configuration文件中,
($ HOME / .config / tracker / tracker.cfg)和/或通过使用
–include-dir选项指定要build立索引的其他目录。