# file-searcher **Repository Path**: chenfyu/file-searcher ## Basic Information - **Project Name**: file-searcher - **Description**: file-searcher:一个高效且易于集成的文件搜索工具,支持多种文件系统和搜索条件,快速定位所需文件,提升查找效率。 - **Primary Language**: Go - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-08-11 - **Last Updated**: 2025-09-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # file-searcher #### 介绍 file-searcher:一个高效且易于集成的文件搜索工具,支持多种文件系统和搜索条件,快速定位所需文件,提升查找效率。 # 文件搜索器 一个使用 Go 语言和 Gio UI 开发的本地文件搜索工具,支持快速搜索文件和文件夹,并提供多种打开方式。 # 程序界面 ![](./docs/assets/image/主界面.png) ![](./docs/assets/image/搜索中.png) ![](./docs/assets/image/搜索完成.png) ## 功能特性 ### 🔍 搜索功能 * **文件搜索** :支持按文件名进行模糊搜索 * **文件夹搜索** :同时支持搜索文件夹 * **部分匹配** :无需输入完整文件名,支持包含匹配 * **大小写不敏感** :搜索时忽略大小写 * **实时搜索** :可以随时停止正在进行的搜索 * **权限处理** :自动跳过无权限访问的目录,继续搜索其他目录 * **系统目录过滤** :自动跳过系统隐藏目录(如 `$` 开头的目录) ### 📁 目录选择 * **手动输入** :可直接在输入框中输入目录路径 * **图形化选择** :点击"浏览"按钮打开文件夹选择对话框 * **路径验证** :自动检查输入的目录是否存在 ### 🖱️ 操作功能 #### 对文件的操作 1. **打开文件** - 使用系统默认程序打开文件 2. **记事本** - 使用 Windows 记事本打开文件(适合文本文件) 3. **打开方式** - 显示 Windows "打开方式"对话框,选择特定程序打开 4. **复制路径** - 将文件完整路径复制到剪贴板 5. **打开文件夹** - 打开文件所在的文件夹 #### 对文件夹的操作 1. **打开文件夹** - 直接在资源管理器中打开文件夹 2. **复制路径** - 将文件夹完整路径复制到剪贴板 ### ⌨️ 快捷键支持 * **Enter 键** :在任意输入框中按回车键可直接开始搜索 * **实时响应** :搜索过程中可随时点击"停止搜索"按钮 ### 🎨 用户界面 * **类型标识** :搜索结果显示 `[文件]` 或 `[文件夹]` 标签,用颜色区分 * **状态反馈** : * 搜索中显示"搜索中..."状态 * 成功操作显示绿色提示信息 * 错误信息显示红色警告 * **按钮颜色编码** : * 绿色:主要操作(打开文件/文件夹) * 蓝色:信息操作(复制路径) * 灰色:工具操作(记事本) * 黄色:选择操作(打开方式) * 红色:停止操作 ### 📊 搜索结果 * **结果统计** :显示找到的文件/文件夹总数 * **详细信息** :每个结果显示完整路径 * **批量结果** :支持显示大量搜索结果的滚动列表 ## 系统要求 * **操作系统** :Windows 10/11 * **依赖库** : * `gioui.org/app` * `gioui.org/io/key` * `gioui.org/layout` * `gioui.org/op` * `gioui.org/widget` * `gioui.org/widget/material` ## 安装和运行 ### 前置要求 1. 安装 Go 语言环境(Go 1.19+) 2. 设置 Go 模块支持 ### 编译运行 ```bash # 克隆或下载源代码 # 进入项目目录 # 初始化 Go 模块 go mod tidy go mod vendor # 编译运行 go run main.go # 或编译为可执行文件 go build -o file-searcher.exe -ldflags="-H windowsgui" main.go ``` ## 使用方法 1. **选择搜索目录** : * 在"目录路径"输入框中输入要搜索的目录 * 或点击"浏览"按钮选择目录 1. **输入搜索关键词** : * 在"文件名"输入框中输入要搜索的文件或文件夹名称 * 支持部分匹配,不区分大小写 1. **开始搜索** : * 点击"搜索"按钮 * 或在输入框中按 Enter 键 1. **查看结果** : * 搜索结果会实时显示在下方列表中 * 每个结果显示类型标识和完整路径 1. **操作文件** : * 根据需要点击相应的操作按钮 * 复制路径后可在其他应用程序中使用 ## 注意事项 * 搜索大型目录(如整个C盘)可能需要较长时间 * 程序会自动跳过无权限访问的系统目录 * 某些系统保护的文件可能无法直接打开 * 复制路径功能依赖于 Windows 的 `clip` 命令 ## 技术特点 * **多线程搜索** :搜索在后台线程执行,不会阻塞用户界面 * **内存优化** :大量搜索结果时保持良好的性能 * **错误处理** :完善的错误处理和用户提示 * **跨平台 UI** :使用 Gio UI 框架,界面现代化且响应迅速 ## 版本信息 * **当前版本** :1.0.0 * **开发语言** :Go 1.19+ * **UI 框架** :Gio UI * **目标平台** :Windows --- *这是一个开源项目,欢迎提交问题和改进建议!*