Everything Search for macOS
🚀 高性能文件搜索工具 - 类似于Windows Everything的macOS解决方案
✨ 特性
- 🔍 极速搜索 - 毫秒级文件搜索响应
- 📊 智能索引 - 增量索引和实时文件系统监控
- 🎯 多种搜索模式 - 支持模糊搜索、正则表达式、文件类型过滤
- 🖥️ 双界面支持 - 现代化GUI界面和强大的命令行工具
- ⚡ 高性能 - 多线程并发处理,优化的数据库查询
- 🔄 实时同步 - 文件系统变更实时更新索引
📦 安装
方式1:使用 uv tool(推荐)
# 安装
uv tool install everything-search
# 启动GUI
everything-search
# 使用CLI
everything-index start
everything-cli "keyword"
# 卸载
uv tool uninstall everything-search
方式2:从源码安装
# 克隆仓库
git clone https://github.com/duolabmeng6/everything-for-mac.git
cd everything-for-mac
# 使用uv tool安装到系统
uv tool install .
# 然后就可以使用系统命令了
everything-search # 启动GUI
everything-index start # 启动索引服务
everything-cli "keyword" # 搜索文件
# 卸载
uv tool uninstall everything-search
🚀 快速开始
命令行搜索
# 初始化索引后才可以搜索
everything-index start
# 基本搜索(直接搜索)
everything-cli "document"
# 正则表达式搜索
everything-cli "*.py" --regex
# 按文件类型搜索
everything-cli extension py
# 按文件大小搜索
everything-cli size --min-size 100M
# 搜索最近修改的文件
everything-cli recent --days 7
# 传统子命令方式(向后兼容)
everything-cli search "document"
🎯 快速命令参考
| 功能 | 命令 | 说明 |
|---|---|---|
| 安装工具 | uv tool install everything-search |
安装到系统 |
| 卸载工具 | uv tool uninstall everything-search |
从系统卸载 |
| 启动GUI | everything-search |
启动图形界面 |
| 初始化索引 | everything-index init |
首次建立文件索引 |
| 自动启动服务 | everything-index start |
自动初始化+增量更新+实时监控 |
| 查看索引状态 | everything-index status |
显示索引统计信息 |
| 基本搜索 | everything-cli "keyword" |
搜索包含关键词的文件 |
| 正则搜索 | everything-cli "*.py" --regex |
使用正则表达式搜索 |
| 按类型搜索 | everything-cli extension py |
搜索指定扩展名的文件 |
| 按大小搜索 | everything-cli size --min-size 100M |
搜索大于指定大小的文件 |
📖 详细使用
GUI界面
启动GUI后,您可以:
-
搜索页面:
- 在搜索框中输入关键词
- 支持实时搜索结果预览
- 可按文件名、大小、修改时间排序
- 右键菜单支持打开文件/文件夹
-
设置页面:
- 管理索引目录
- 配置排除规则
- 查看索引状态
- 启动/停止实时监控
命令行工具
索引管理 (everything-index)
# 查看帮助
everything-index --help
# 初始化索引
everything-index init
# 自动启动(初始化+增量更新+实时监控)
everything-index start
# 重建索引
everything-index rebuild
# 启动实时监控
everything-index watch
# 查看索引状态
everything-index status
# 配置管理
everything-index config show
everything-index config add-dir ~/Documents
文件搜索 (everything-cli)
# 查看帮助
everything-cli --help
# 基本搜索(直接搜索)
everything-cli "keyword"
# 高级搜索选项
everything-cli "pattern" --regex --limit 100
# 按扩展名搜索
everything-cli extension py
# 按大小搜索
everything-cli size --min-size 1M --max-size 100M
# 最近文件
everything-cli recent --days 30
# 搜索并打开
everything-cli open "config"
# 显示统计信息
everything-cli stats --extensions
# 传统子命令方式(向后兼容)
everything-cli search "keyword"
⚙️ 配置
配置文件位置:~/.everything-search/config.json
主要配置项:
{
"index": {
"directories": ["/Users/username/Documents", "/Users/username/Desktop"],
"exclude_dirs": [".git", "node_modules", ".venv"],
"exclude_extensions": [".tmp", ".log"],
"max_file_size_mb": 1000,
"follow_symlinks": false,
"index_hidden_files": false
},
"search": {
"case_sensitive": false,
"fuzzy_search": true,
"max_results": 1000
}
}
项目结构
everything-search/
├── everything_search/ # 主包
│ ├── core/ # 核心模块
│ │ ├── config_manager.py # 配置管理
│ │ ├── database.py # 数据库操作
│ │ ├── file_indexer.py # 文件索引
│ │ ├── search_engine.py # 搜索引擎
│ │ └── file_watcher.py # 文件监控
│ ├── cli/ # 命令行工具
│ │ ├── index_cli.py # 索引管理CLI
│ │ └── search_cli.py # 搜索CLI
│ ├── gui/ # GUI界面
│ │ ├── main_window.py # 主窗口
│ │ ├── search_tab.py # 搜索页面
│ │ └── settings_tab.py # 设置页面
│ └── gui_main.py # GUI启动脚本
├── pyproject.toml # 项目配置
└── README.md # 项目说明
🤝 贡献
欢迎提交Issue和Pull Request!
- Fork 项目
- 创建特性分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 打开Pull Request
📄 许可证
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情
🙏 致谢
- 灵感来源于Windows平台的Everything搜索工具
- 使用了优秀的开源库:PySide6、watchdog等
📞 联系
- 作者:duolabmeng6
- 邮箱:1715109585@qq.com
- 项目链接:https://github.com/duolabmeng6/everything-for-mac
⭐ 如果这个项目对您有帮助,请给个Star支持一下!
打赏
Metadata
Release files for everything-search 1.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| everything_search-1.0.2.tar.gz | 577.9 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| everything_search-1.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 631.8 kB
Release files / everything_search-1.0.2.tar.gz
| Download URL | everything_search-1.0.2.tar.gz |
|---|---|
| Size | 577.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f882d2b11ba89b48ed432e03a348a5e151c09b69d3eea29b49b82492819d070e
|
|
BLAKE2b-256 checksum How to use checksums |
743437a044635e4c68e7e1846062c2d5c8cca3ad9cd15e446223d3cff8844b51
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.8
|
Release files / everything_search-1.0.2-py3-none-any.whl
| Download URL | everything_search-1.0.2-py3-none-any.whl |
|---|---|
| Size | 53.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ee12dc765e26e8847b26feaba23afe07e5ef36ce5d0a60b4455d7edada266fc4
|
|
BLAKE2b-256 checksum How to use checksums |
07f7ad029f492c280a711437e1717d89ffab636ceb8af67a7455cc51b4249b47
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.8
|
Security for everything-search 1.0.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.