本机OS X应用程序是否可以读取和复制Spotlight搜索索引?

时间:2011-11-07 21:59:43

标签: macos search spotlight

我不想以任何方式更改索引,只需读取它,监视它以进行更改,然后复制它。它将使用本机应用程序/服务,它将在后台运行。我假设我的目标是10.6+,但这不是一成不变的。

实际指数在哪里?我可以用任何语义上有用的方式阅读它吗?

在Google上搜索,我没有找到任何对实际Spotlight索引位置的引用,也没有找到用于读取整个内容的API。我确实找到了Search Kit Reference,它似乎解释了底层技术如何工作并可能有用,但没有解释人们如何检索整个索引,或者随着时间的推移监视索引。

我还注意到一个名为Houdah的应用程序预示着为Spotlight提供了一个改进的前端,这可能是有意义的,虽然我不知道它们是如何实现它们的效果的 - 如果它实际上只是一个调用它的前端相同的Search Kit API就像Spotlight对同一个索引一样,这不是我追求的......

编辑:简直不敢相信我没有读过wikipedia article on Spotlight - 很好的参考,但我认为我的问题仍然存在。

(我是一个前端网络人物,为无趣而道歉。)

更新:OS X开发人员朋友认为它将存储在隐藏文件中的SQLite数据库中,但无法在他查看的几分钟内找到实际文件。他找到了一个隐藏的.spotlight目录,但这是空的。

1 个答案:

答案 0 :(得分:2)

在Mac OS X 10.7上 - 以前的版本有很大不同 - Spotlight索引存储在/.Spotlight-V100/Store-V2中。存储格式没有记录,但肯定是 SQLite。

我怀疑在没有不切实际的逆向工程量的情况下,从Spotlight索引中提取数据是有用的。即使你这样做了,它也可能会破坏新版本的Mac OS X.