我从免费图书馆下载了一组 PDF,我想时不时地搜索一下。为此,我想使用 shell 脚本来执行“mdfind”命令。 由于我的计算机上有很多 PDF,因此我不希望对每个 PDF 执行 kMDItemTextContent。我只想搜索那一组特定的 PDF。
我的问题是,当我重点搜索这些 PDF 时(例如,它们的文件名中都包含某个单词),所有 13 个 PDF 都会在结果中弹出,但是当我使用 mdfind 搜索某个文件夹中的 PDF 时,只出现了 2 个。
这是我使用的:
mdfind -onlyin '/Users/folder/folder/folder with spaces/' 'kMDItemContentTypeTree=="com.adobe.pdf"'
谁能告诉我为什么?!
更新:以上内容只是关于查找正确的 PDF,而不是关于实际的文本搜索..
最佳答案
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 索引后它找到了所有这些文件。
关于macos - mdfind 缺少结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16258856/