mdfind缺少结果

时间:2013-04-28 02:16:22

标签: macos shell terminal spotlight

我有一组从我想要搜索的免费图书馆下载的PDF文件。为此,我想使用一个执行'mdfind'命令的shell脚本。 由于我的计算机上有很多PDF文件,因此我不希望在每个PDF文件上执行kMDItemTextContent。我只想搜索某些特定的PDF文件。

我的问题是,当我突然搜索那些PDF时 - 例如他们的文件名中都有一个单词 - 所有13个PDF都会在结果中弹出,但是当我使用mdfind搜索特定文件夹中的PDF时,只有2出现。

以下是我使用的内容:

mdfind -onlyin '/Users/folder/folder/folder with spaces/' 'kMDItemContentTypeTree=="com.adobe.pdf"'

谁能告诉我为什么?!

更新:以上只是找到正确的PDF,而不是实际的文本搜索..

1 个答案:

答案 0 :(得分:3)

mdfind在我的图书馆文件夹中也遗漏了一些PDF:

$ comm -3 <(printf %s\\n ~/Documents/books/**/*.pdf | sort) <(mdfind -onlyin ~/Documents/books kMDItemContentType=com.adobe.pdf | sort) | wc -l
       6

mdimport ~/Documents/books没有帮助,但在我使用sudo mdutil -Ea重建Spotlight索引后,它找到了所有这些文件。