fselect
title: “fselect 使用指南:用 SQL 查詢你的硬盤,文件搜索的終極形態” description: “fselect 是一款命令行文件搜索工具,允許你用 SQL 語法搜索文件,支持按大小、日期、內容等複雜條件組合查詢,比 Everything 更靈活。” date: 2026-05-13T16:01:43.084Z category: 文件管理 tags:
- fselect
- 文件搜索
- SQL搜索文件
- 命令行工具
- 文件查找 keywords:
- fselect
- 文件搜索
- SQL搜索文件
- 命令行工具
- 文件查找
fselect:當文件搜索遇上了 SQL,一切都變得優雅
一句話解決:當你需要按”2024年1月之後修改的、大於100MB的、PDF文件,且在 D盤的項目文件夾裡”這種複雜條件找文件時,fselect 讓你用一句 SQL 搞定。
Everything 搜索文件確實快,但它的查詢能力有限。當你需要組合多個條件、按特定方式排序、甚至跨文件夾統計文件信息時,Everything 就力不從心了。
這就是 fselect 存在的意義。
fselect 是什麼?
fselect 是一個命令行文件搜索工具,它最大的特點就是——讓你用 SQL 語法來搜索文件。
對的,你沒看錯。就是 SELECT、WHERE、ORDER BY 那些 SQL 關鍵字,用來查你的硬盤。
fselect 解決的核心問題:
- 複雜條件組合搜索 → 用 SQL 靈活表達
- 文件信息統計 → 直接 count/avg/sum
- 按條件批量操作 → 查出結果直接 pipe 給其他命令
- 跨平臺一致體驗 → Mac/Linux/Windows 都用同一個語法
用起來有多爽?
場景一:複雜條件搜索
用 Everything 你要搜”大於 1GB 的視頻文件”還得點半天篩選。用 fselect,一行搞定:
fselect "name, size, path FROM files WHERE type = 'video' AND size > 1g ORDER BY size DESC"
結果直接列出來,按大小倒序。
場景二:找超大文件清理磁盤
磁盤紅了想找大文件清理?
fselect "path, size FROM files WHERE size > 500m ORDER BY size DESC LIMIT 20"
硬盤裡最大的 20 個文件全列出來,一個不落。
場景三:統計文件數量
fselect "COUNT(*), LOWER(extension) FROM /path/to/project WHERE type = 'image' GROUP BY LOWER(extension)"
一鍵統計項目裡各種格式的圖片各有多少張。
場景四:深層查找
想在”C:\Work\Projects”裡找所有包含”report”關鍵字的 Excel 文件,且要求文件是 2024 年之後創建的?
fselect "name, path, created FROM C:/Work/Projects WHERE name LIKE '%report%' AND extension = 'xlsx' AND created > '2024-01-01'"
Everything 做不到這麼細緻,但 fselect 輕鬆搞定。
同類工具對比
| 對比項 | fselect | Everything | 系統自帶搜索 |
|---|---|---|---|
| 查詢語法 | SQL | 關鍵字 | 關鍵字 |
| 複雜條件組合 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐ |
| 搜索速度 | 快(索引方式) | 極快(NTFS 索引) | 慢 |
| 統計聚合 | 支持 | 不支持 | 不支持 |
| 圖形界面 | 無(純命令行) | 有 | 有 |
| 學習門檻 | 中高 | 極低 | 低 |
fselect 適合這樣的人:你熟悉命令行,工作中經常需要找特定條件的文件,或者需要批量統計文件信息。
用戶評價
- Hacker News 網友:“Finally, someone made the ‘SELECT * FROM files WHERE…’ tool I’ve wanted for years.”
- 知乎程序猿@ByteFlow:“第一次用 fselect 搜文件的時候,有種上帝視角的感覺。”
- Reddit r/commandline:“fselect is what every developer wishes Windows search could be.”
優缺點總結
👍 優點
- SQL 表達能力極強,複雜查詢手到擒來
- 搜索速度快,做了索引優化
- 跨平臺支持(Windows/Mac/Linux)
- 可配合管道與其他命令行工具聯動
- 支持聚合統計、分組、排序等高級功能
👎 缺點
- 純命令行,沒有圖形界面
- 需要學習 SQL 語法(雖然基礎 SQL 就夠了)
- 默認不自動索引,第一次搜索特定目錄稍慢
- 文件名中文支持在某些場景下有問題
- 不適合只想快速找個文件的普通用戶
下載與安裝
Windows 安裝方式
方式一:通過 Scoop 安裝(推薦)
scoop install fselect
方式二:通過 Chocolatey 安裝
choco install fselect
方式三:從 GitHub 下載
- https://github.com/jhspetersson/fselect/releases
- 下載對應系統的二進制文件,解壓後加入 PATH
注意:通過 Scoop 或 Chocolatey 安裝會自動配置環境變量,比手動下載方便得多。
快速上手
- 安裝完成後打開終端(CMD 或 PowerShell)
- 試試最簡單的搜索:
fselect "name FROM C:/Users" LIMIT 10 - 按類型過濾:
fselect "name, path FROM C:/Downloads WHERE type = 'image'" - 按大小過濾:
fselect "name, size FROM C:/ WHERE size > 100m" - 試試聚合:
fselect "COUNT(*), extension FROM D:/Documents GROUP BY extension"
常用查詢模板
# 找最近修改的大文件
fselect "name, path, modified FROM C:/ WHERE size > 500m AND modified > '2025-01-01'"
# 統計各種文件類型的數量和總大小
fselect "COUNT(*), SUM(size), extension FROM D:/Projects GROUP BY extension ORDER BY COUNT(*) DESC"
# 找特定擴展名+包含關鍵詞的文件
fselect "name, path FROM C:/Work WHERE extension IN ('pdf', 'docx') AND name LIKE '%報告%'"
# 找空文件
fselect "name, path FROM E:/Backup WHERE size = 0"
結語
fselect 不是給所有人用的。普通用戶用 Everything 就很好。但如果你是個開發者、數據分析師或者重度計算機使用者,經常需要按複雜條件找文件,fselect 能給你 Everything 給不了的靈活度。
當你習慣用 fselect "SELECT * FROM files WHERE..." 來審視你的硬盤時,你會感覺整個文件系統都變成了一個數據庫——想查什麼就查什麼。
一句話總結:萬物皆可 SQL,搜索文件也不例外。