通过 mdfind 从命令行使用 Spotlight

终端 iTerm)并探索 mdfind , Spotlight 的命令行版本。

即使您是新手或不了解 Mac OS X 的 Unix 基础,也可以尝试一下。

打开你的终端并输入 mdfind,你会得到一些提示,因为你没有指定搜索查询,这有点像一个简短的手册页,但你可以使用 -h 手动检索它也像大多数其他命令行工具一样标记。

$ mdfind
mdfind:未指定查询。

这是因为您需要为 mdfind 提供一些要查找的数据,例如:

mdfind [搜索指令]

但让我们继续返回帮助部分的完整指令集,让我们回顾一下:

$ mdfind
mdfind:未指定查询。

用法:mdfind [-live] [-onlyin directory] ​​query
列出匹配查询的文件
query可以是一个表达式或一个单词序列

-live 查询应保持活动状态
-onlyin dir 仅在给定目录内搜索

-0 使用 NUL (`` '') 作为路径分隔符,与 xargs -0 一起使用。

示例:mdfind 图像
示例:mdfind "kMDItemAuthor == '*MyFavoriteAuthor*'"
示例:mdfind -live MyFavoriteAuthor

如果这看起来令人困惑,其实不然。

假设您要查找名为“recipe”的文件并且您知道它在您的文档文件夹中,您可以键入:

$ mdfind 食谱 -onlyin ~/Documents/

如果您有大量食谱,将输出通过管道传输到更多可能是个好主意,如下所示:

<代码>$ mdfind 食谱 -onlyin ~/Documents/ |更多

通过 more 传递结果,您可以一次查看一屏。您可以通过按 control-c 退出更多。

如果你不知道某物在哪里,你可以更加模糊,只使用名称限定符:

mdfind -name 南瓜

这将在整个 mac 中搜索名称中带有“Pumpkin”的所有内容,然后将全部报告回来。

mdfind 命令还有很多工作要做,但我们暂时保持简单。除了好奇之外,mdfind 命令可能比标准 Mac 用户对系统管理员、unix 极客、shell 脚本编写者和程序员更有用。对于我们其他人来说,命令空间就在那里,我们没有抱怨。