Cardinal 是 macOS 上最快最准的文件搜索 App,1.6k Stars 开源免费。支持 Everything 兼容语法(空格 AND、通配符、大小过滤、路径限制、Finder 标签、内容搜索等),全局快捷键 Cmd+Shift+Space 即开即搜,原生支持 15 种语言免费用即可。
🎤 引言
Windows 用户有个神器叫 Everything——秒级索引百万文件,输入几个字符立刻出结果。macOS 用户?系统自带的 Spotlight 慢吞吞、Alfred 收费、第三方搜索要么卡要么难用。
Cardinal 想做的事情非常直白:把 Everything 的体验搬上 macOS。1.6k stars、867 次 commit、MIT/Apache 协议(仓库待确认)、基于 Rust + Tauri 构建——它不是又一个 Spotlight 套壳 App,而是从头实现了一套完整兼容 Everything 语法的搜索引擎。
按 Cmd+Shift+Space 唤起,输入 report draft,空格自动作为 AND 运算,瞬间列出所有文件名同时包含这两个词的文件。用过 Everything 的人秒懂这是什么体验。
⭐ 核心功能
Everything 兼容语法层
这是 Cardinal 最硬核的特性——完整移植了 Windows Everything 的搜索语法,macOS 老用户和从 Windows 迁移过来的开发者的体验完全一致:
| 语法 | 含义 | 示例 |
|---|---|---|
| 空格 | AND 运算 | report draft 同时含两个词 |
*.ext | 扩展名过滤 | *.pdf briefing 找 PDF 中带 briefing 的 |
size:>100MB | 大小过滤 | *.zip size:>100MB 找大 ZIP |
in:/path | 路径限制 | in:/Users demo !.psd 在 /Users 下找 demo 排除 psd |
tag:Name | Finder 标签 | tag:ProjectA;ProjectB(; 表示 OR) |
content:"..." | 内容搜索 | *.md content:"Bearer " |
"exact" | 引号精确匹配 | "Application Support" |
path/sub | 路径分隔符 | brary/Applicat 找 Library/Application Support |
/prefix /suffix /exact/ | 强制匹配 | /report draft/ /report/ |
~/**/*.ext | Globstar | ~/**/.DS_Store 全盘找残留 .DS_Store |
完整操作符目录(布尔分组、正则、目录限定等)见 doc/pub/search-syntax.md。
即时索引(Everything 同款体验)
基于 Rust 构建的索引器在后台持续扫描文件系统,首次启动后几乎瞬间就能搜索整个磁盘。输入查询 → 几乎无延迟 → 结果按相关性 + 文件属性排序。这跟 Spotlight 的"先索引几分钟再能用"完全不同。
全局快捷键 + 快速预览
Cmd+Shift+Space—— 全局快速启动,随处唤起。Space—— Quick Look 预览选中文件,无需打开 App。Cmd+O—— 直接打开。Cmd+R—— 在 Finder 中显示。Cmd+C/Cmd+Shift+C—— 复制文件 / 复制路径。Esc—— 一键隐藏窗口。Cmd+F—— 焦点回到搜索框。Cmd+,—— 偏好设置。ArrowUp/Down/Shift+ArrowUp/Down—— 移动 / 多选。- 搜索框内
ArrowUp/Down—— 翻历史搜索。
原生 i18n
仓库 README 已经收录 15 种语言:English / Español / 한국어 / Русский / 简体中文 / 繁體中文 / Português / Italiano / 日本語 / Français / Deutsch / Українська / العربية / हिन्दी / Türkçe。
状态栏点 ⚙️ 按钮即时切换,不用重启 App。
技术栈现代化
- Rust 写核心引擎(cardinal-sdk + cardinal-syntax)
- Tauri 写桌面壳(Rust 后端 + Web 前端)
- Node.js 18+ 提供前端工具链
- 比纯 Electron App 小一个数量级的安装包 + 内存占用
📥 安装与使用
Cardinal 的安装方式分两种。
Homebrew 安装(推荐)
brew install --cask cardinal-search一行搞定,自动放到 /Applications,Launchpad 里直接搜 Cardinal 启动。
手动安装
从 GitHub Releases 拉最新 .dmg,拖入 /Applications 文件夹即可。
系统要求
- macOS 12+
- 第一次启动需要授予"磁盘访问权限"(系统设置 → 隐私与安全 → 完全磁盘访问权限),否则搜不到结果。
首次配置
- 启动 Cardinal → 状态栏出现 🔍 图标。
Cmd+Shift+Space唤起主窗口。- 输入测试关键词,例如
*.pdf→ 验证是否能列出所有 PDF。 - 点 ⚙️ 切换界面语言。
- 索引会后台持续运行,几分钟后覆盖整个磁盘。
日常使用
- 全局快捷键唤起 → 输入 → 选文件 → Enter 或
Cmd+O打开 - 临时筛选:在搜索框加修饰(
*.md,in:~/Downloads等) - 找特定类型大文件:
*.log size:>50MB - 找散落的配置文件:
~/**/.DS_Store或~/**/thumbs.db - 找某标签下的文件:
tag:Work;Personal(OR 关系)
自定义快捷键
在偏好设置 (Cmd+,) 里可以改全局快捷键,与其他 App(Raycast、Spotlight)冲突时也能灵活调整。
开发 / 自构建
需要修改源码或参与贡献:
git clone https://github.com/cardisoft/cardinal
cd cardinal/cardinal
npm install
npm run tauri dev -- --release --features dev生产构建:
cd cardinal
npm run tauri build需要 Rust 工具链 + Node.js 18+ + Xcode 命令行工具。
🎯 适用场景
谁最适合装一个 Cardinal?
- 从 Windows 迁移到 macOS 的开发者:Everything 用习惯了,Spotlight 各种不顺手,Cardinal 是无缝迁移方案。
- 重度文件管理用户:设计师(找 PSD/Sketch)、视频剪辑(找素材)、开发者(找代码片段)、律师(找文档)——任何需要"快速定位某个具体文件"的场景。
- 磁盘空间焦虑患者:
size:>500MB *.zip一键列出所有大 ZIP,*.log size:>100MB找占空间的日志,*.dmg size:>1GB找下载残留。 - 强迫症清理党:
~/**/.DS_Store找出所有隐藏的系统文件残留,*/Thumbs.db同理。 - 多语言 / 国际化用户:界面原生支持 15 种语言,中文 / 英文 / 日文 / 韩文 / 西语用户都能直接用。
- 不喜欢订阅制的工具控:开源免费,无需付费买 Alfred Powerpack 这种订阅套餐。
🔍 对比 / 替代方案
macOS 上的文件搜索工具不多,Cardinal 的位置可以这么看:
系统自带
- Spotlight:系统内置,免费,但索引慢、语法弱(基本只能模糊匹配),对开发者的复杂查询支持很差。
- Finders 搜索:Finder 自带搜索条,体验类似 Spotlight 但可以指定文件夹,对全盘搜索束手无策。
第三方经典
- Alfred:macOS 经典效率工具,免费版基础功能够用,Powerpack 付费 才能解锁自定义搜索 + Workflow。搜索体验其实比 Spotlight 强很多,但和 Everything 的"毫秒级全盘"还是有差距。
- Raycast:Alfred 的强力挑战者,免费版功能极强(剪贴板历史、窗口管理、快捷启动),文件搜索是其中之一但不是核心卖点。
- HoudahSpot:老牌专业搜索工具,UI 复古但搜索能力强,付费软件。
Everything 移植派
- Cardinal:本文主角,完整兼容 Everything 语法,Rust + Tauri,性能强。
- fzf / ripgrep:终端党的命令行方案,体验顶级但需要会终端。
- Hammerspoon 自定义:极客方案,自己写脚本拼 Everything 体验。
Cardinal 的差异化
- ✅ 唯一完整实现 Everything 语法的 macOS 原生 GUI 工具——其他要么没 GUI、要么语法残缺。
- ✅ Rust + Tauri:比 Electron App 小 10 倍以上,启动 < 1 秒。
- ✅ 15 种语言原生支持,状态栏一键切换。
- ✅ 完全开源免费,无订阅、无广告、无内购。
- ✅ Finder 标签集成——这是 macOS 独有的特性,Cardinal 原生支持
tag:ProjectA语法。 - ⚠️ 仅 macOS——Linux/Windows 用户还是用原生 Everything。
⚠️ 注意事项
客观地讲几个坑:
- 仅 macOS:Linux 和 Windows 用户请继续用原生 Everything,Cardinal 不跨平台。
- 首次启动需授予"完全磁盘访问权限":这是 macOS 系统限制,没权限搜不到系统级目录(
/Library、/Applications等)。不授权也能用,只是搜得不全。 - 首次全盘索引需要几分钟:索引器后台跑,几分钟后覆盖整个磁盘。期间搜索结果可能不完整。
- 不支持 Windows 平台的 Everything 全部特性:比如
regex:正则、dupe:查重、empty:查空文件夹等高级操作符,Cardinal 当前版本不一定全支持。迁移前请看 doc/pub/search-syntax.md 确认。 - 与 Spotlight / Raycast 冲突:如果全局快捷键冲突,需要在系统设置或 Cardinal 偏好里改。
- GitHub Copilot 提交:项目里有大量
[Copilot]提交,是作者用 GitHub Copilot 协作开发的产物。代码 PR 质量没问题,但 review 时建议多加注意。 - iCloud 文件路径:iCloud Drive 里的"未下载"文件可能被识别为占位符,需要先下载才能搜到完整内容。
- dmg 文件版本号可能滞后 Homebrew:Homebrew Cask 通常更新更及时,追求最新版优先 brew 升级。
- 39 个 open issues + 11 个 PR:项目活跃但功能仍在迭代,部分边缘场景可能临时有 bug。
✅ 总结
Cardinal 是 macOS 上目前最接近 Everything 体验的开源文件搜索工具——Rust 性能 + Tauri 轻量 + Everything 完整语法 + 15 种语言原生支持 + 全免费开源。Spotlight 慢、Alfred 收费、HoudahSpot UI 复古的尴尬局面,从今天起有了第四个正经选项。
- ✅ 完整兼容 Everything 搜索语法(空格 AND、通配符、大小过滤、路径限定、标签、内容、正则等)
- ✅ Rust + Tauri,启动快、内存小、性能强
- ✅ 全局快捷键
Cmd+Shift+Space即开即搜 - ✅ 15 种语言原生支持,状态栏一键切换
- ✅ Finder 标签原生集成(macOS 独有特性)
- ✅ 完全开源免费,无订阅、无广告
- ✅ Homebrew 一行安装
- ⚠️ 仅 macOS 平台
- ⚠️ 需要授予"完全磁盘访问权限"
- ⚠️ 首次全盘索引需要几分钟
- ⚠️ 部分 Everything 高级操作符(regex、dupe、empty 等)暂未完整支持
- ⚠️ 项目仍在 0.x 迭代,39 个 open issues
推荐指数:⭐⭐⭐⭐⭐ (5/5)
适合:从 Windows 迁到 macOS 的开发者、重度文件管理用户、磁盘空间焦虑患者、找大文件 / 找隐藏文件的清理党、Everything 铁粉、需要多语言切换的国际化用户。
不适合:只用 Spotlight 就够用的轻度用户、Windows/Linux 用户(继续用 Everything)、需要 Everything 全套高级操作符(regex/dupe/empty)的极客。
如果你在 macOS 上经常为"找不到那个文件"而烦躁,强烈建议装一个 Cardinal——brew install --cask cardinal-search 一行命令,然后用 Cmd+Shift+Space 体验一把 Everything 那种"键入即所得"的丝滑。
Cardinal — Everything's macOS cousin.