
上周三下午同事把笔记本塞到我手上说 C 盘只剩 3GB 了Windows 更新都装不上。我打开资源管理器一看C 盘那根进度条红得发紫。他的第一反应是去下载了三款清理神器一键扫描、一键清理折腾了四十分钟C 盘从 3GB 变成了 4.2GB桌面右下角多了两个常驻小图标开机时间还长了十几秒。这就是大多数人在清理C盘这件事上的真实路径手比脑子快先装软件再看结果。而我这些年帮人处理过几十台 C 盘告急的机器得出的结论恰好相反——清理 C 盘的第一步不是找一款最快最好的磁盘管理软件而是找一款能让你在三分钟内看清楚这几百 GB 到底被什么吃掉了的分析工具清理动作永远是第二步。于是就有了这篇横评。我把手上七款能查 C 盘占用的工具全装了一遍WizTree、TreeSize Free、Diskitude、SpaceSniffer、WinDirStat、Everything 的文件夹大小功能以及 Windows 自带的存储感知配合磁盘清理。评测重点不是谁的界面好看而是扫描速度、结果准不准、能不能直接跳到文件所在位置、以及最关键的——它能不能帮你做出这个文件到底该不该删的判断。不管你用的是 Win10 还是 Win11C 盘是 256GB 还是 1TB只要你的 C 盘变红过这篇内容应该都能帮你省下几个小时的瞎折腾。顺便说一句C盘满了怎么清理这件事工具只占三成剩下七成是对什么能删什么不能删的判断力这部分我会在后面的章节里掰开讲。1. 别急着装软件先搞清楚 C 盘空间的四种占用者在讨论软件之前得先建立一个分类框架。因为不同的占用类型处理方式完全不同用错工具等于白干。我一般把 C 盘的占用分成四类这个分类是我自己踩坑总结出来的比任何软件的分类视图都更接近实际决策。1.1 第一类与第二类系统自己产生的东西第一类是可以再生的垃圾。临时文件、缩略图缓存、Windows 更新缓存、错误报告、日志文件、回收站、传递优化文件。它们的共同特征是删了系统还会再生成但生成过程不影响使用体积通常单个数百 MB 到几 GB加起来可能有 10GB 上下。这一类用系统自带工具就能安全清掉不需要任何第三方软件。第二类是一个顶十个的系统级大件。休眠文件hiberfil.sys、页面文件pagefile.sys、系统还原点、Windows.old、WinSxS 组件库。这几个家伙单个就可能占 5GB 到 30GB。它们的处理方式不是删而是配置——休眠文件要用powercfg关页面文件要在系统属性里改位置还原点要调整配额WinSxS 要用 DISM 清理。用手动删除的方式去碰这些文件轻则删不掉重则系统起不来。我遇到过最典型的情况是一位朋友的 C 盘 500GB 只剩 8GB用软件扫出来 WinSxS 显示 21GB他兴冲冲地把 WinSxS 目录整个删了。结果是系统更新彻底报废最后只能重装。这里的坑在于——WinSxS 目录里大量文件是硬链接显示的 21GB 里有相当一部分是和 System32 共享的同一份数据实际独占空间可能只有一半甚至更少。显示大小和删掉能腾出的空间是两回事这一点后面第 4 章会专门展开。1.2 第三类与第四类应用数据与看着能删其实不能删第三类是应用产生的数据这才往往是真正的空间大户。微信和 QQ 的聊天记录尤其是群聊里的视频和文件、浏览器缓存、Steam 游戏库、Docker Desktop 的虚拟磁盘、WSL 发行版的 ext4.vhdx、Adobe 系列暂存盘、pip/npm/conda 的包缓存、各种 SDK 和模拟器镜像。这一类的最佳处理方式不是删而是搬家——把存储位置改到 D 盘或者移动硬盘。直接删掉的后果是软件要重新登录、重新配置甚至数据丢失。第四类是看起来能删、实际碰不得的Program Files、Windows\System32、ProgramData 里的大部分内容、Boot 目录、System Volume Information、AppData 里的配置文件。还有一类更隐蔽的——桌面和文档里的真实文件。我见过有人为了腾空间把下载文件夹整个清空结果里面是三年积累的项目素材回收站又被顺手清空了。把这四类放在一起对照处理策略就很清楚了占用类型典型体积处理手段风险等级可再生垃圾临时文件、缓存、日志3GB ~ 15GB系统存储感知、磁盘清理、命令行低系统级大件休眠、页面、还原点、WinSxS、Windows.old10GB ~ 60GBpowercfg、系统属性、DISM、vssadmin中需按规程操作应用数据聊天记录、游戏、虚拟磁盘、包缓存10GB ~ 200GB改存储位置、迁移、压缩虚拟磁盘中重点是别丢数据不可删除项系统目录、配置文件、真实文档—不要动高所以选软件的逻辑是这样的你需要的第一款工具是分析器任务是告诉你哪一块最大第二款才是清理器任务是安全地把该清的清掉。市面上的产品基本只做其中一件事混着用才不会出问题。1.3 不装任何软件也能先看一眼的三个入口真要动手之前有三个零成本的入口值得先走一遍能省掉很多装软件的时间。第一个是设置 → 系统 → 存储Win11 和 Win10 都有。它会按应用和功能临时文件文档图片等分类列出占用点进临时文件还能看到具体的分类项。缺点是统计有延迟而且不告诉你单个大文件在哪。第二个是资源管理器右键 → 属性配合逐个展开文件夹。笨但零风险适合确认是不是某个特定目录长胖了。第三个是 PowerShell 的粗略统计。下面这条命令会算出 C 盘根目录下每个顶层文件夹的体积跑之前记得用管理员身份打开不然大量目录读不到会显示 0Get-ChildItem C:\ -Force -Directory -ErrorAction SilentlyContinue | ForEach-Object { $size (Get-ChildItem $_.FullName -Recurse -Force -File -ErrorAction SilentlyContinue | Measure-Object -Property Length -Sum).Sum {0,-45} {1,10:N2} GB -f $_.FullName, ($size / 1GB) }注意这条命令对C:\Windows和C:\Users会跑得非常慢因为它是一个文件一个文件去数。它的定位是粗略摸底真要精查还是得上专业分析工具。2. 横评的评测口径我用什么标准打分任何横评如果不先说清楚标准那排名就没有意义。这一章把测试环境、数据规模和五个打分维度交代清楚你可以根据自己的机器情况做折算也可以直接拿去复用这套评估方法。2.1 测试用的三台机器和三种数据形态我用了三台机器主力机Win11 23H2i7 标压512GB NVMeC 盘 350GB实际占用约 280GB装了 Docker Desktop、WSL、一个 60GB 的游戏库属于典型重度使用者的画像。老机器Win10SATA SSD 系统盘 机械盘混装C 盘 200GB 占用 180GB碎片多、小文件多用来测极端情况。小文件测试目录手动构造的一个约 60 万个小文件的目录大量 1KB 到 50KB 的文件这个目录是我专门用来拉开性能差距的。为什么要专门准备小文件目录因为磁盘分析工具的性能瓶颈不在总字节数而在文件条目数。一个 50GB 的电影文件夹扫描只要几秒但 60 万个 1KB 文件可能让某些工具卡上几分钟——每一次 stat 调用都是一次磁盘 IO几十万次 IO 在机械盘上就是灾难。这也是为什么很多人在某些软件上看到扫描中转圈转到怀疑人生。2.2 五个打分维度以及一个必须先说清楚的定位问题我的五个维度是扫描速度管理员权限下首次全盘扫描耗时。我记录的是量级区间因为不同机器差异极大重要的是相对差距而不是绝对值。结果准确性与资源管理器属性、fsutil输出做交叉对比重点看硬链接、NTFS 压缩、稀疏文件、云盘占位文件这四种容易算错的情况。可视化可读性能不能在 3 秒内看出最大的那一块在哪。这一条对新手尤其重要。交互与定位右键能否直接打开文件所在位置、能否直接删除、有没有 shell 扩展带来的副作用这条是 WizTree 那节的重点。清理能力是分析器还是清理器能不能真正帮你完成腾出空间这个动作。这里有个必须提前说清的定位问题这七款工具里只有系统自带的存储感知和磁盘清理属于清理器其余六款本质上都是分析器。经常有人在社区里骂某款分析软件没用扫完什么也不能干其实是把工具定位搞错了——分析器的价值就在于告诉你该删什么删的动作交给更慎重的流程去做这恰恰是安全的设计。维度权重我的主观判断说明扫描速度25%影响的是你愿不愿意经常用结果准确性25%算错的代价是删错文件可视化20%决定新手能不能看懂交互与定位15%决定从看到到处理的效率清理能力15%分析器的这一项可给低分不算硬伤3. 七款工具逐个上机谁快、谁准、谁适合干什么这一章是主体。我会按原理 → 实测表现 → 适合谁 → 短板的结构逐个讲最后给一张选型对照表。需要提前说明的是下面的耗时数据是我在这三台机器上的观察结果你的机器会有出入重点看相对关系。3.1 WizTree直接读 MFT 的暴力解法WizTree 快的原因不在于它代码写得多好而在于它走了一条完全不同的路它不遍历目录树而是直接读取 NTFS 的主文件表MFT。打个比方别的工具是跑到图书馆里一本一本地翻书数页数WizTree 是直接去翻索引卡片——索引卡上已经写好了每本书的页数和位置。这个原理带来两个直接结果。第一是快我的主力机上280GB 占用的 C 盘WizTree 全盘扫描基本在几秒到十几秒的量级那个 60 万小文件的目录也是数秒级别的。第二是它有前提条件必须是 NTFS 文件系统而且最好用管理员权限运行。如果是 exFAT、FAT32、或者网络映射盘、移动硬盘WizTree 会退化成普通的遍历扫描速度优势基本消失——这是很多人抱怨WizTree 也没那么快的真实原因。界面部分是我最喜欢它的地方左侧是目录树右侧是方块图treemap面积正比于体积大块一眼可见。下方还有三个视图文件类型统计、Top 1000 最大文件、Top 1000 最大文件夹。Top 1000 最大文件这个列表是清理 C 盘时最有效的一屏通常前二十个条目就能解释一半以上的空间去向。它也有自己的问题。安装版会可选地注册资源管理器右键扩展这个扩展在某些环境下会导致右键卡顿我在第 4 章会专门讲怎么定位和处理。另外它的删除操作要谨慎对待我的习惯是只拿它做定位删除动作一律回到资源管理器里手动执行这样至少回收站还有后悔的机会。3.2 TreeSize Free信息密度最高的免费选手TreeSize 是老牌工具免费版的功能已经相当够用付费版主要多了导出、高级过滤和多任务并行扫描这些企业向能力。它最大的特点是表格视图的信息密度极高大小、占用空间、包含文件数、占比百分比、修改时间全部可排序。这里有个关键的使用技巧用管理员权限运行 TreeSize它会自动改用 MFT 直接读取速度能有数量级的提升如果只是普通权限双击它就是老老实实逐文件遍历同一块盘可能从十几秒变成几分钟。我见过不少人对比 WizTree 和 TreeSize 之后得出结论TreeSize 慢得要死八成是没用管理员运行。我个人最常用的功能是它的时间过滤。清理 C 盘时有个很实用的判据一个 5GB 的文件如果修改时间是两年前那它大概率可以搬走或者删掉如果是昨天刚改的那就是活跃数据动它要慎重。TreeSize 的修改时间列配上排序找这种僵尸大文件非常高效这一点比 WizTree 顺手。它的短板是可视化弱——只有柱状占比条没有方块图看哪一块最大的直观程度明显不如 WizTree界面风格偏旧免费版会有升级提示导出功能受限。所以我的用法是WizTree 负责一眼看全局TreeSize 负责按时间/类型做精细筛选两个搭配用。3.3 Diskitude一个圆环三十秒定性Diskitude 是个极简到有点可爱的工具。单文件、体积极小塞进 U 盘毫无压力、双击即用界面就是一个圆环圆环被切成若干扇区每个扇区代表一个文件夹鼠标划过就往里下钻一层。没有目录树没有表格没有设置项。它的价值在于启动速度和零学习成本。当你需要快速回答这台机器到底是不是某个目录的问题时Diskitude 可能是最快的路径——打开、点两下、结论就出来了。我自己的 U 盘里常年放一份帮别人看电脑时先跑它做定性。但它的能力边界也很明显没有文件类型统计没有 Top 列表不能搜索几乎没有删除操作集成对大目录的下钻体验一般工具年代比较久远在高分屏和较新的系统上显示效果一般。所以它适合当侦察兵不适合当主力工具。真正要动手清理的时候还是得换 WizTree 或者 TreeSize。3.4 SpaceSniffer边删边看反馈最直观SpaceSniffer 走的是方块树路线和 WizTree 的右侧面板类似但它是把方块树做成了主界面且交互更活。每个方块代表一个文件或文件夹面积正比于体积双击方块进入下一层。它有两个我特别喜欢的能力。第一是支持按条件过滤你可以在扫描后直接筛出只显示大于 1GB 的项目只显示某个日期之前的文件名字里含 cache 的项目对着一堆筛选结果做决策比在几千个目录里翻要高效得多。第二是实时刷新你在外面删了一个文件夹SpaceSniffer 会局部重扫方块随即消失你能立刻看到释放了多少空间。这种即时反馈对边删边判断的场景非常友好。它的缺点也很实在方块图信息密度高的时候容易眼花尤其是小文件极多的目录屏幕上会出现密密麻麻的碎块过滤掉小方块需要手动调最小方块尺寸刚上手的人往往被满屏碎块劝退扫描速度属于中等水平不开管理员权限看不全系统目录。我的建议是第一次打开就在设置里把最小方块尺寸调大一些比如设成 1MB视觉负担会小很多。3.5 WinDirStat扩展名视角最清晰的免费方案WinDirStat 是开源圈里的老牌工具三视图布局上面是目录列表右上是按扩展名着色的图例下面是方块图。它的招牌能力是按扩展名统计——彩色方块和图例一一对应你能一眼看出这台机器的 C 盘是被一堆视频占满的还是被大量 .log 或者 .iso 文件占满的。这个视角很实用。举个例子如果图例里最大的色块对应 .mp4那说明是媒体文件问题如果是一个很小的扩展名占据了巨大面积那大概率是某个软件在疯狂写日志或者缓存。它回答的是什么类型的东西占空间而 WizTree 更擅长回答哪个文件占空间两个问题是互补的。它的短板一是速度慢小文件多的时候尤其明显扫描过程也没有 MFT 加速这种捷径二是项目维护节奏很慢界面观感比较有年代感三是它的删除操作默认不走回收站误删几乎没有挽回余地——这一点必须记住我的做法是永远不在它里面直接删除只用来定位。3.6 Everything 的文件夹大小另一个维度的杀器严格说 Everything 不是磁盘可视化工具它是一个文件索引器。但 1.5 之后的版本加入了文件夹大小的支持需要在设置里开启相关索引项于是一件事变得非常轻松用搜索语法批量找全盘的大文件。它的搜索语法是这门工具的精髓比如下面这几条在清理 C 盘时非常实用size:1gb ext:log size:500mb ext:tmp;cache folder: ext:iso;mp4;mkv size:2gb第一条找全盘大于 1GB 的日志文件第二条找临时文件和缓存第三条找体积超标的媒体镜像。这些查询在几百 GB 的索引上通常是秒级出结果效率是任何目录树工具都比不了的。它的局限也很清楚没有占比可视化你看到的是列表而不是全局文件夹大小的计算在部分版本里需要逐个统计速度会打折它不知道文件的历史和用途不能替你判断能不能删。所以我的用法是把它当作流程的第二步——先用 WizTree 定位到问题就在某个目录再用 Everything 在那个目录里做批量筛选。3.7 系统自带存储感知与磁盘清理最安全的兜底方案最后是系统自带的方案。设置 → 系统 → 存储 里有临时文件入口可以先看再选存储感知可以设置成自动定期清理。传统路线是运行cleanmgr点清理系统文件之后列表里会多出Windows 更新清理以前的 Windows 安装传递优化文件设备驱动程序包缩略图等项。这些分类的全部意义在于它们的判断依据来自系统本身误删风险最低。你不需要知道传递优化文件到底是什么系统说能清那就基本能清。缺点同样明显慢扫描一次可能几分钟、看不到具体文件、不能按大小排序定位问题。所以它是个清道夫不是侦探——它负责执行不负责发现。我的常规操作顺序是先在设置里跑一遍临时文件通常能回收 3GB 到 10GB然后针对 Windows 更新清理和 Windows.old 再来一轮往往还能挖出 10GB 以上。这一步做完之后如果 C 盘还是不宽裕才会去动休眠文件、页面文件和还原点这些大件。3.8 七款工具选型对照表把上面的结论收拢成一张表方便你按场景直接抄工具扫描速度可视化是否需管理员最适合的场景主要短板WizTree极快读 MFT方块图 Top 列表建议首次全盘摸底、找最大文件右键扩展可能影响资源管理器TreeSize Free慢无权/ 快有权表格 占比条强烈建议按时间、类型精细筛选可视化弱、界面旧Diskitude快单圆环否三十秒快速定性功能极少、年代久SpaceSniffer中等方块树 实时刷新建议边删边看、条件过滤满屏碎块、上手需适应WinDirStat慢方块图 扩展名图例建议看什么类型的文件占空间慢、删除不进回收站Everything 1.5索引后秒级列表否按语法批量检索大文件无占比视图、要开索引系统自带存储感知慢分类列表部分需要安全兜底清理看不到细节、不能定位一句话版本WizTree 开局定位TreeSize 精细筛选Everything 批量收割系统自带负责收尾。Diskitude、SpaceSniffer、WinDirStat 属于备选看你更喜欢哪种交互。4. WizTree 的神器病右键卡死、体积对不上与权限坑用 WizTree 的人多了社区里出现的抱怨也开始集中。我帮人排查过几次问题基本落在三个地方右键卡顿、扫描体积和实际对不上、非管理员运行时的异常显示。这一章把这三种情况的排查链路完整写出来你可以照着复现。4.1 资源管理器右键转圈一条完整的排查链路现象很典型右键任意文件夹甚至右键此电脑鼠标转圈几秒到十几秒才弹出菜单文件夹本身打开没问题。这个症状在装了 WizTree 之后出现的机器上很常见但不能直接断定就是它因为右键菜单是多个 shell 扩展共同参与的任何一个拖后腿都会卡。我的排查顺序是这样的第一步确认触发范围。是只在特定盘符比如某个移动硬盘或者断连的网络位置卡还是所有位置都卡如果只在外接存储或网络位置卡那大概率是某个扩展在查询设备信息时超时等待跟 WizTree 关系不大。第二步查看当前加载了哪些 shell 扩展。用 ShellExView 或者 Autoruns 这类工具能列出资源管理器里注册的右键菜单处理程序一般会有几十项把状态、公司、文件路径看清楚。第三步做对照实验。把可疑扩展临时禁用重启资源管理器再测。WizTree 的右键扩展在安装时可以取消勾选如果已经装了重新运行安装程序取消这一项或者在它的设置里关闭右键菜单相关的开关效果一样。第四步排除系统本身的因素。Win11 的显示更多选项也就是那套旧版右键菜单本身就比新版菜单慢这是系统层面的设计问题跟第三方扩展叠加起来会更明显。我遇到过的实际情况是关掉 WizTree 的右键扩展后确实好了一半剩下的延迟来自某个云盘客户端和一个杀毒软件的文件扫描钩子。提示我的建议是直接不要装 WizTree 的右键扩展。日常使用中你完全可以把 WizTree 打开后再把文件夹拖进窗口或者用命令行带路径启动几乎没有任何效率损失但能规避掉一整类奇怪的问题。4.2 扫描结果和资源管理器属性对不上四种正常情况第二种抱怨是WizTree 说这个文件夹 15GB我右键属性只有 8GB。这种情况绝大多数不是 bug而是四种机制在起作用硬链接重复计算。WinSxS 是重灾区。系统为了节省空间把同一个文件的多份副本变成了指向同一份数据的硬链接但在目录结构上它们看起来是多个独立文件。读取 MFT 的工具会把每个链接都算一次所以你看到的 WinSxS 体积可能远大于它的实际独占空间。想验证的话可以用DISM /Online /Cleanup-Image /AnalyzeComponentStore它会分别告诉你组件存储实际大小和可回收大小。NTFS 压缩与稀疏文件。逻辑大小和磁盘实际占用是两回事。一个被压缩的文件可能逻辑大小 2GB、实际只占 800MB。WizTree 的面板里同时有大小和占用空间两列判断删掉能腾出多少要看占用空间那一列很多人只看前一列于是估算总是偏高。云盘的按需文件。OneDrive 这类工具的联机可用文件在本地只是一个占位符实际占用极小。但在某些扫描视角下它会按完整大小显示因为它读的是文件的元数据大小。这类文件不需要清理它们本身就不占地方。扫描过程中文件在变化。MFT 读取相当于对文件系统拍了一张快照扫描期间如果有软件在大量写文件比如正在下载、正在编译结果就会和事后的属性查询不一致。重扫一次即可。4.3 权限、长路径与显示为 0的假象第三种情况是某些目录显示为空或者 0 字节。原因几乎都是权限没有管理员权限时系统目录、其他用户的用户目录、加密目录都读不到。所以所有磁盘分析工具都应该用管理员身份运行这一条没有例外。另外两个容易被忽略的漏算来源一是超长路径路径超过传统长度限制时部分工具会跳过或者读取失败导致漏算二是正在被独占写入的文件比如数据库文件、虚拟磁盘文件、日志文件扫描时拿不到准确大小。遇到这种情况把相关软件退出来再扫一遍。5. 从看清到清掉几类大头文件的具体处理方式分析工具只能告诉你问题在哪真正的空间回收还是要落到具体操作上。这一章按系统级和应用级分开讲每个操作都说明它在做什么、代价是什么。5.1 系统级大件休眠、页面文件、WinSxS、还原点、Windows.old休眠文件hiberfil.sys。体积通常等于内存的 40% 到 75%16GB 内存的机器上就是 6GB 到 12GB。如果从来不用休眠功能可以直接关掉:: 关闭休眠并删除 hiberfil.sys通常能释放数 GB powercfg /h off :: 如果还想保留休眠只是缩小文件可以用这条 powercfg /h /size 40注意powercfg /h off会同时禁用快速启动如果你依赖开机速度就选第二条缩小尺寸的方案。页面文件pagefile.sys。路径是系统属性 → 高级 → 性能设置 → 高级 → 虚拟内存 → 更改。可以把它移到 D 盘。但有两个代价必须先知道一是完全关闭页面文件可能导致某些程序崩溃很多软件会预留提交内存二是系统蓝屏时的内存转储依赖页面文件移走或关掉之后就没法做完整转储了。我的做法是移到其他 SSD 而不是直接关闭机械盘上放页面文件会让整体体验变差。WinSxS。先分析再清理Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore Dism.exe /Online /Cleanup-Image /StartComponentCleanup Dism.exe /Online /Cleanup-Image /StartComponentCleanup /ResetBase注意/ResetBase会把所有已安装更新的备份一并清掉之后你将无法单独卸载某个历史更新。如果你习惯用卸载某个补丁来规避问题这条命令就别加。系统还原点。查看和限制配额的命令行方式如下:: 查看还原点占用的空间 vssadmin list shadowstorage :: 把还原点配额限制到 10GB比直接删掉更温和 vssadmin resize shadowstorage /forc: /onc: /maxsize10GB图形界面在系统属性 → 系统保护 → 配置里可以调整最大使用量百分比也可以删除历史还原点。建议先限制配额不要一上来就把还原点全删了留着最近一两个还原点在系统出问题时能救命。Windows.old。这是系统大版本升级留下的旧系统备份通常 10GB 到 30GB。它会在升级后保留一段时间后自动清理着急的话可以在磁盘清理里勾以前的 Windows 安装直接删掉。删掉之后就无法回退到旧版本系统了这是它的唯一代价。5.2 应用级缓存从聊天记录到虚拟磁盘微信和 QQ。这是国内用户最常见的空间黑洞。微信的路径是设置 → 文件管理 → 更改文件存储位置选一个 D 盘的目录然后一定要点迁移把已有数据搬过去只改路径不迁移的话老数据还留在 C 盘。QQ 和 TIM 的设置逻辑类似。搬完之后再去存储空间里清理一次不需要的群文件和历史视频。浏览器。缓存目录和默认下载目录都建议改到非系统盘。浏览器的缓存属于可再生数据随便清但下载目录里的东西是你自己的文件清之前先看一眼。Steam、Epic 等游戏平台。都支持添加第二个库文件夹到其他盘然后在平台的存储管理里把游戏移动过去不用重新下载。Docker Desktop 与 WSL。这是开发者机器的典型坑WSL2 的虚拟磁盘ext4.vhdx只增不减你删了容器和镜像文件体积也不会自动缩小。压缩方法是这样:: 先彻底关闭 WSL wsl --shutdown :: 打开 diskpart 压缩虚拟磁盘 diskpart select vdisk fileC:\Users\你的用户名\AppData\Local\Packages\发行版包名\LocalState\ext4.vhdx attach vdisk readonly compact vdisk detach vdisk exit路径里的发行版包名每个人不一样去AppData\Local\Packages下找带LocalState\ext4.vhdx的那个目录即可。如果不想折腾也可以在 Docker Desktop 设置里把磁盘镜像位置整体挪到 D 盘。包管理器缓存。开发机上这些缓存往往悄悄攒到几 GB 甚至十几 GBpip cache purge npm cache clean --force conda clean -a另外 Maven 的本地仓库、Gradle 的缓存目录、各种 SDK 的下载缓存都可以通过环境变量或者配置文件指到其他盘。这一项属于改一次管很久的投资。5.3 用命令行做一次批量清理一个稳妥的 bat 写法热词里c盘清理bat出现频率很高说明大家确实想要一个双击就能跑的脚本。这里给一个我自己在用的版本只碰临时目录不碰任何其他位置echo off chcp 65001 nul echo 正在清理当前用户临时文件... del /f /s /q %TEMP%\*.* 1nul 2nul for /d %%i in (%TEMP%\*) do rd /s /q %%i 1nul 2nul echo 正在清理系统临时文件... del /f /s /q %SystemRoot%\Temp\*.* 1nul 2nul for /d %%i in (%SystemRoot%\Temp\*) do rd /s /q %%i 1nul 2nul echo 完成部分被占用的文件已自动跳过。 pause用法很简单保存成.bat右键以管理员身份运行。有几条经验值得说一是被占用的文件删不掉是正常的脚本会跳过不用管二是不要在这个脚本里加任何rd /s /q指向非临时目录的语句这类脚本一旦路径写错就是不可逆的三是想更省事的话可以用磁盘清理的预配置模式先跑一次cleanmgr /sageset:1勾选项目之后每次只需执行cleanmgr /sagerun:1静默清理。5.4 哪些东西看着能删其实不能删这一节是我用血泪换来的清单建议动手前逐条对照看着能删的项目删掉的后果正确做法WinSxS 目录系统更新彻底损坏可能无法修复用 DISM 清理Program Files 下的子目录软件直接报废卸载残留走官方卸载程序AppData\Roaming软件配置、登录状态全部丢失只清 Local\Temppagefile.sys / hiberfil.sys系统异常或开机变慢用系统设置或 powercfgSystem Volume Information还原点损坏用系统保护界面管理桌面、下载、文档里的内容个人文件永久丢失先看再动能搬不删各类 .dll 文件程序启动报错、系统不稳定不要单独处理6. C 盘实在腾不出来时扩容与迁移的取舍有时候清完所有能清的C 盘还是不够用这时候就得考虑扩容或者迁移。这两件事都有风险我把关键点说清楚。6.1 为什么扩容总是要贴着 C 盘右边Windows 自带的磁盘管理有个硬限制只能把紧邻分区右侧的未分配空间合并进来。也就是说C 盘要扩容未分配空间必须正好位于 C 盘右侧。但实际情况往往是C 后面紧跟着 D 盘D 盘后面才是空闲空间。你从 D 盘尾部压缩出 50GB得到的是位于 D 盘右侧的未分配空间它并不和 C 盘相邻所以操作界面上扩展卷是灰色的。想绕过去要么删掉整个 D 盘数据全没要么用能移动分区的工具把 D 盘整体右移再把腾出来的空间交给 C。这就是第三方分区工具的价值所在——它们能移动分区的起始位置。但必须明确一点任何一次调整分区大小都有风险。移动一个有几十 GB 数据的分区本质上是把数据块搬来搬去过程中断电、坏道、强制重启都可能导致分区表损坏。所以操作前的备份不是建议是必须笔记本要插好电源中途不要运行任何大程序。6.2 压缩卷失败的几个常见原因很多人遇到过压缩卷算出来可用空间只有几百 MB跟自己预期差很远。原因通常是这几种不可移动文件占据了 D 盘尾部页面文件、休眠文件、MFT 保留区、卷影副本最容易出现在这里BitLocker 加密会导致无法压缩需要先解密碎片过多也会让可压缩量变小。处理顺序我一般是先关休眠 → 把页面文件临时设为无 → 关闭系统保护临时→ 如果开了 BitLocker 就先解密 → 重启一次 → 再做压缩。走完这一轮能看到的最大可压缩量通常会明显增加。第三方分区工具因为能强行搬动不可移动文件往往能压出更多空间但风险也随之上升做这类操作前把重要数据复制到外部存储是底线。6.3 不扩容也能腾挪文件夹迁移加目录联接如果不想碰分区表还有一个折中方案把 C 盘上的大目录搬到 D 盘然后在原位置建一个目录联接junction让程序以为文件还在原地。流程大致是:: 1) 复制数据保留权限和时间戳 robocopy C:\BigFolder D:\BigFolder /E /COPYALL /DCOPY:DAT /R:1 /W:1 :: 2) 确认复制无误后再删除原目录 rmdir C:\BigFolder :: 3) 建立目录联接不需要开发者模式 mklink /J C:\BigFolder D:\BigFolder几个实测要点mklink /J创建的是目录联接普通权限就能执行而mklink /D创建的是符号链接通常需要管理员或开发者模式跨盘使用时兼容性也不如目录联接。第二点更重要——不要对这个方案上瘾。它对普通数据目录比如游戏、素材、模型缓存效果很好但对系统目录、软件安装目录、需要频繁更新的目录不适用因为有些程序的更新机制会绕过联接导致新版本装到别的地方或者直接报错。我的原则是只对纯数据目录用这个办法。7. 关于清理大师类软件我的态度和使用边界热词里出现了不少名字带大师专家瘦身极速的清理软件这一类产品我需要单独说几句因为它们和上面七款工具是两种东西。7.1 它们实际做了什么这类软件的核心逻辑是把系统临时目录、浏览器缓存、日志、缩略图缓存这些低风险可清项扫一遍把所有匹配文件的大小加总报出一个很大的数字。这里有个容易误导的地方——扫出 30GB 可清理不等于能腾出 30GB。里面很多是正在被占用的文件、系统会立刻重建的缓存、以及本来就不占实际空间的压缩文件真正能释放的可能是其中的三分之一。更值得注意的是它们的附加行为常驻后台进程、开机自启、托盘图标、定时弹窗、诱导升级付费版、捆绑安装其他软件、清理注册表这类收益极低而风险不低的功能。注册表清理是我最不推荐的——一个正常的 Windows 系统里注册表冗余项对性能的影响基本可以忽略但清错了可能直接导致某个软件无法启动。7.2 我给自己定的三条使用规则第一不装常驻型的清理软件。凡是会开机自启、会往资源管理器里挂右键菜单、会常驻托盘的我都不装。我需要的是用完就关的分析工具而不是一个长期住在系统里的管家。第二系统级清理由系统自带工具和命令行完成可视化分析用 WizTree、TreeSize 这一类功能边界清晰的工具。这样的分工有个好处每一件事的责任方都很明确出问题容易回溯。第三如果一定要装装完立刻核对三件事任务管理器的启动页有没有多出它、服务列表里有没有新增服务、C 盘之外有没有多出不明目录。卸载之后也顺手检查一遍用户目录和 ProgramData 下的残留文件夹很多这类软件卸载后会留一堆配置文件。我现在的固定流程是先用 WizTree 扫一遍看 Top 1000 最大文件和文件类型分布花两分钟确定问题在哪一类然后按第 5 章的方法处理系统级大件再用 TreeSize 按修改时间筛出僵尸大文件最后跑一遍系统自带的临时文件清理收尾。整套流程下来一台 C 盘告急的机器通常能回收 30GB 到 80GB而且不会留下任何常驻进程和残留配置——这一点比任何一键清理都更让我安心。