七类自动归仓
视频、压缩包、安装包、镜像、文档、图片、其他,按扩展名一次分好,不用再靠肉眼翻目录。
纯本地运行 · 不联网 · 可撤销
选盘符或文件夹,按 7 类自动归类、按体积降序排列;勾选后删进回收站,按 Ctrl+Z 就能撤回。 全程本地运行——不联网、不上传、不读文件内容。
它不接管你的文件,也不替你做决定。只做一件事:把「谁占了空间」摊开给你看,然后由你勾选。
点「选择」挑任意文件夹,或直接点下方盘符扫整盘——那里顺带显示各盘剩余空间,一眼知道该清哪个盘。
默认 100 MB,可改成 20 甚至 0.5。只列出真正占地方的东西,不被几万个小文件淹没。
左侧点类型筛选,点文件名在资源管理器里定位;勾选后删除到回收站,需要留档就导出 CSV。
没有云同步、没有账号、没有「一键加速」的噱头。八个功能,全部围绕「看清 → 确认 → 处理」这一条线。
视频、压缩包、安装包、镜像、文档、图片、其他,按扩展名一次分好,不用再靠肉眼翻目录。
默认按占用降序,表头可切名称与修改时间;搜索框按文件名即时过滤,几万条也不卡。
条形看每类占比,切环形图后点扇区即筛选,点圆心回到全部,悬停看数量与占比。
不做永久删除。执行前弹出一次确认,列出完整清单与合计体积,你点确认才动。
删除后底部出现撤销条,最近 5 批随时撤回,文件从回收站搬回原位置,时间戳与属性都保留。
点文件名直接在资源管理器里选中它。不确定是什么文件时,先看一眼再决定删不删。
全部结果带 BOM 导出,Excel 双击不乱码;字段转义与公式注入防护都做了。
默认跳过 $Recycle.Bin、System Volume Information、node_modules、.git,整盘扫描快很多。
没有隐藏菜单,没有设置迷宫。主界面、环形图、删除确认——都是真实运行截图,不是设计稿。
扇区与图例联动:点某一类立刻筛出该类型文件,点圆心回到全部。悬停能看到这一类的数量与占比,比翻表格快。
待删文件、合计体积、「进回收站、可撤销」的提示,一次确认才执行。不需要输入文字,也不会连点两下就删掉东西。
Windows 没给外部程序「还原某一项」的接口。回收站里每个被删对象是一对文件:$I 存元数据,$R 是真实内容,都躺在 %盘符%\$Recycle.Bin\<SID>\ 下。
先按修改时间倒序 stat 一遍 $I——1.2 万条约 120 ms,刚删的一定在最前面——再逐条读内容,命中即停。命中后把 $R 重命名回原路径(同卷原子操作,时间戳和属性都保留),最后删掉配对的 $I。
整套流程跑在 worker 线程里,界面不卡,撤销条上还有实时进度。
// $I 元数据结构(未公开格式)
offset size field
0 8 版本号
8 8 原始大小
16 8 删除时间 FILETIME
24 4 路径长度
28 n UTF-16LE 原路径
// 匹配条件
match = 原路径 + 原始大小
pick = 同路径删过多次时取最新一条
// 还原动作
rename($R → 原路径) // 同卷,原子
unlink($I) // 消费该条元数据
文件名、大小、修改时间。不解码图片、不生成缩略图、不读一个字节的内容——所以它不需要「看」你的照片和文档。
主进程的 onBeforeRequest 直接 cancel 所有 http / https / ws / ftp 请求;页面 CSP 写死 connect-src 'none'。断网照常工作。
只允许本次扫描根目录下的普通文件,越界路径与目录一律拒绝;只走系统回收站,不做永久删除;执行前必须确认清单。
安装包自带 Electron 运行时,普通用户权限安装,无需管理员,也无需 Node.js。首次运行 SmartScreen 可能提示「未知发布者」,点「更多信息 → 仍要运行」即可。
npm start 自己跑。
不是客服工单系统。加微信或在公众号留言,我本人在看。
Bug 反馈、功能建议、或者只是想聊聊你硬盘里都堆了什么。
WECHAT工具更新、开发踩坑记录,以及一些没写进 README 的实现细节。
OFFICIAL