Windows 文件夹安全瘦身
> 一套"先看清楚、再动手、全程可恢复"的文件夹清理方法论,专治"电脑太乱/太占空间但又不敢删"。
适用场景
- 某个磁盘或文件夹占用过大(如工作目录、开发环境目录、下载目录)
- 想清理临时文件、旧日志、缓存,又怕误删重要资料
- 需要"可反悔"的清理,而不是一键裸删
核心原则
- 正式资料保留:文档、报告、交付物、模板、成果文件、配置备份
- 过程冗余可清:临时文件、中间产物、日志、调试数据、历史会话缓存、旧版本文件
- 重复文件可清:源目录 + 同名压缩包等重复内容只留一份
- 全程可恢复:删除前先移入"待删区"(等效回收站);物理清除前必须用户明确确认
标准流程
- 扫描分布(只读,先不删任何东西)
- 按子目录统计体量:du -sh <目标>/* | sort -rh
- 找大文件:find <目标> -type f -size +50M -exec ls -lh {} \;
- 识别类别:程序本体/运行时/配置/成果文件 → 保留;日志/trace/临时/中间产物 → 候选 - 分类出清单:每项标注 留 / 删 / 待确认,附大小与理由,形成清单文档
- 与用户确认:清理范围(可多选)+ 安全策略(先备份 / 待删区 / 直接删)
- 分批处理(每批 ≤10 项,一批一验证)
- 优先系统回收站(脚本可用SendToRecycleBinAPI)
- 回收站 API 被安全策略拦截时:os.rename同卷移动到"待删区"目录(秒级、可恢复)
- 每批验证:目标已消失、相邻目录未受影响、关键程序仍正常 - 物理删除:用户确认后删除待删区(此时才真正释放磁盘空间)
- 输出报告:清理报告(删了什么 / 省了多少 / 待删区在哪 / 备份在哪)
技术要点
- 优先处理大文件:通常 80% 空间集中在 20% 文件,先统计再动手
- 同卷移动(rename)不复制、不占额外空间,是"可恢复清理"的最快手段
- 同卷移动不释放空间,释放 = 最终删除待删区,务必向用户如实说明
- 处理前备份关键清单(如依赖包列表 pip freeze、配置文件清单),以备重建
- 清理后建议重启相关程序验证无副作用(如 OCR、开发环境)
安全红线
- 不碰:记忆库、配置文件、程序本体、运行时、用户正式文档
- 删除前先导出关键清单到备份目录
- 物理删除前必须用户明确确认;小批量;失败即停并报告
- 对不确定的项目标注"待人工确认",绝不擅自删除