Oil Find 是一款 macOS 文件搜索工具,设计思路对标 Windows 平台知名工具 Everything。它不依赖系统 Spotlight,自行在内存中构建文件名索引。快捷键 ⇧⌘F 可以在屏幕中央调出搜索框,边输入边实时返回搜索结果;文件新增、改名、删除时,索引会自动增量同步更新。

高速搜索底层原理
Oil Find 能够实现毫秒级检索,核心来自几项底层优化:
- 文件名统一存储在连续内存空间,数十万文件名称按列存放,避免为每个文件单独创建对象带来开销;
- 字符匹配采用C语言实现,搭配Apple芯片NEON向量指令批量对比字符;
- 搜索结果逐层收敛,新增关键词仅在上一轮结果集合内二次过滤;
- 通过FSEvents监听文件系统变动,只增量更新发生变化的索引;重启程序后可以接续上次进度补全索引。
M5(24GB)设备实测性能数据
| 索引范围 | 文件总量 | 建索引耗时 | 常驻内存占用 | readme查询 | wd拼音查询 | kind:image图像检索 |
|---|---|---|---|---|---|---|
| 默认范围 | 85万 | 3.0 秒 | 45 MB | 0.6 ms | 0.3 ms | 3.9 ms |
| 整盘索引 | 750万 | 27.2 秒 | 343 MB | 8.1 ms | 3.4 ms | 3.8 ms |
默认范围会自动排除开发依赖、应用包内部文件、资源库与系统目录,可在设置手动开启。仅输入单个字母时查询压力最大,默认范围约11ms,整盘索引约58ms。
支持搜索语法
| 输入示例 | 匹配规则说明 |
|---|---|
| wd、wendang | 拼音首字母/全拼检索,匹配中文「文档」 |
| foo bar | 同时包含 foo 和 bar |
| foo | bar | 包含 foo 或者 bar |
| readme !node_modules | 包含readme,排除node_modules目录 |
| *.png | 通配符匹配文件名 |
| ~/Desktop/ png | 仅在桌面目录内检索png文件 |
| ext:pdf;docx | 限定文件扩展名 |
| kind:image | 按文件类型筛选:folder/app/doc/image/video/audio/code/archive |
| size:>10mb、size:1mb..5mb | 按文件大小筛选 |
| dm:today、dm:week、dm:2026-10-01 | 按修改时间筛选 |
| regex:^IMG_\d+ | 正则表达式匹配 |
支持直接粘贴各类路径,包含file://链接、带转义引号路径、附带行号列号的编辑器路径。搜索框内按下 ⌘/,随时调出语法速查面板。
内置快捷键
| 快捷键 | 功能 |
|---|---|
| ⇧⌘F | 唤起搜索框,快捷键可自定义 |
| Return | 打开选中文件 |
| ⌘Return | 在访达中定位文件 |
| ⌘Y | Quick Look快速预览 |
| ⌘C / ⌥⌘C | 复制文件路径 / 复制文件名 |
| ⌘⌫ | 将文件移至废纸篓 |
| Tab / ⌘1…9 | 切换文件类型分类 |
| ⌘/ | 打开搜索语法帮助 |
搜索结果支持直接拖拽至其他应用。
安装与权限说明
- 在 Releases 页面下载 Oil-Find.zip,解压后将 Oil Find 拖入「应用程序」文件夹。
- 首次打开会被macOS拦截(未经过Apple公证),前往系统设置 → 隐私与安全性,页面底部选择「仍要打开」。
- 可选授权「完全磁盘访问权限」,授权后可检索邮件附件与应用内数据;不授权也可正常使用基础搜索。
- 更新:内置版本检测,有新版本可一键更新重启;自动更新可在设置关闭。
- 卸载:退出Oil Find,删除应用程序内Oil Find,同时删除目录
~/Library/Application Support/Oil Find。










