C盘爆满不用慌:从临时文件到系统组件,完整的Windows清理指南
2026/9/8 11:22:09 网站建设 项目流程

C盘红了,不是删两个临时文件就能解决的。这次我们不聊那些“清完马上又满”的治标操作,直接上一套从临时文件、用户目录、系统组件到第三方软件缓存的完整清理思路,顺便把“哪些能删、哪些不能删、删错了怎么恢复”一起讲清楚,适用于 Windows 10 和 Windows 11。

先说结论:C盘清理的核心不是“找个软件一键扫垃圾”,而是搞明白空间被谁占了。按照本文的顺序操作一遍,通常能释放 10GB 到 50GB 以上;如果你的系统里还有休眠文件、旧版本 Windows 更新残留或者 Docker/WSL 虚拟磁盘,释放空间会更多。

文章会按“先看占用 → 清临时文件 → 处理系统组件 → 迁移用户文件夹 → 扩容”的顺序展开,涉及 CMD、PowerShell 命令,也会给可视化操作的替代方案。全程不需要第三方清理软件,Windows 自带工具就能完成大部分工作。

1. 先搞清楚 C 盘空间被谁吃掉了

清理之前,先做一步诊断,避免盲清。按下Win + I打开系统设置,进入“系统 → 存储”,Windows 会给出一个大概的空间分布图,包括“系统和保留空间”“应用和功能”“临时文件”“用户文件夹”等几大类。

但系统自带的统计有时候不够细。更推荐用 TreeSize Free、WizTree 这类磁盘占用分析工具扫一遍 C 盘,按文件夹大小排序,很快就能看到真正的“空间大户”到底是C:\Users\Administrator\AppDataC:\Windows\WinSxS,还是某个软件的缓存目录。这一步只做分析,不需要立即删除任何东西。

以下几个目录是 C 盘空间的常见占用点,后续所有清理都是围绕它们展开的:

目录/项目常见占用大小是否可清理说明
C:\Windows\Temp几百 MB 到几 GB可清理系统临时文件,删除不影响系统运行
C:\Users\用户名\AppData\Local\Temp几百 MB 到十几 GB可清理用户级临时文件,部分文件可能被占用
C:\Windows\SoftwareDistribution\Download几 GB 到十几 GB可清理Windows 更新缓存,删除后不影响已安装更新
C:\Windows\WinSxS5GB 到 20GB+谨慎清理组件存储,不建议手动删,要用 DISM 清理
C:\Windows.old10GB 到 30GB可清理旧系统备份,确认新系统正常后可删
C:\hiberfil.sys3GB 到 30GB可选择性关闭休眠文件,大小约为物理内存的 40% 到 70%
C:\pagefile.sys4GB 到 32GB可迁移/调整虚拟内存页面文件
C:\Users\用户名\AppData\Local\Docker十几 GB 到几十 GB可清理/迁移Docker Desktop 虚拟磁盘
C:\Users\用户名\AppData\Local\Packages几 GB 到几十 GB谨慎清理UWP 应用数据
C:\Users\用户名\AppData\Roaming\Code几 GB 到十几 GB可迁移/清理VS Code 缓存和扩展
C:\Users\用户名\.cache几 GB 到几十 GB可清理HuggingFace、pip、npm 等缓存
C:\Users\用户名\.conda几 GB 到几十 GB可清理/迁移Conda 环境包

如果你发现C:\Users\Administrator\AppData\Local\Temp占了几十 GB,那大概率是某些 AI 工具、建模软件或者开发工具的临时缓存堆出来的,清掉即可。

2. 系统自带清理:存储感知与磁盘清理

2.1 开启存储感知

Windows 10 和 Windows 11 都内置了“存储感知”功能,可以自动清理临时文件和回收站内容。

操作路径:设置 → 系统 → 存储 → 打开“存储感知”,点击“立即释放空间”。

在这里可以勾选以下项目:

  • 临时文件
  • 回收站
  • 下载文件夹(注意:这里会删除下载目录中的文件,建议先检查内容)
  • 以前的 Windows 安装文件
  • 传递优化文件

建议第一次先勾选“临时文件”“回收站”“传递优化文件”,不要勾“下载文件夹”,因为很多人会把安装包放在里面但还没安装完。

2.2 使用磁盘清理工具

在开始菜单搜索“磁盘清理”,选择 C 盘,会看到另一个维度的清理选项。点击“清理系统文件”可以拿到管理员级别的清理项目,比如“Windows 更新清理”“设备驱动程序包”“系统还原”等。

这里最值得关注的是“Windows 更新清理”。系统更新后会保留旧版本组件,占用可能高达 5GB 到 15GB,点击清理后一般可以释放大量空间。

需要注意:磁盘清理工具界面里显示的大小是“占用空间”,不是“可释放空间”。比如“Windows 更新清理”显示 8GB,实际释放可能只有 6GB,但仍然是目前最安全的大块头清理项目之一。

3. CMD 与 PowerShell 命令清理

如果你习惯命令行,下面这套清理流程比图形界面更直接,但是每一条命令都要理解后再执行。

3.1 清理临时文件

打开 CMD(管理员权限),执行以下命令:

# 删除 Windows 临时目录下的所有文件 del /q /f /s %WINDIR%\Temp\*.* # 删除用户临时目录下的所有文件 del /q /f /s %TEMP%\*.* # 删除 Windows 更新下载缓存 del /q /f /s %WINDIR%\SoftwareDistribution\Download\*.*

说明:

  • /q表示安静模式,不提示确认。
  • /f表示强制删除只读文件。
  • /s表示递归删除子目录内容。

如果提示“另一个程序正在使用此文件”,忽略即可,下次开机后再清理一遍就能删掉。

3.2 使用 DISM 清理系统组件

Windows 组件存储(WinSxS)不能直接手工删除,需要用到 DISM:

# 先分析系统组件清理可回收的空间 Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore # 执行组件清理 Dism.exe /Online /Cleanup-Image /StartComponentCleanup

/AnalyzeComponentStore会先输出“组件存储实际使用空间”和“可通过清理回收的空间”,确认后再执行/StartComponentCleanup。整个过程可能需要 10 到 30 分钟,期间不要关机。

3.3 清理系统更新残留(旧版本组件)

针对 Windows 10/11 更新后的残留,可以使用:

# 清理过期更新组件 Dism.exe /Online /Cleanup-Image /SPSuperseded

/SPSuperseded会把被新版本替代的旧更新包直接移除,释放效果通常很明显。需要注意的是,执行完后旧更新无法卸载,这本身不是问题,因为过期更新本来就不建议回滚。

3.4 使用 Storage Sense 命令行触发清理

Windows 设置里的“存储感知”也有命令行入口,适合写脚本自动化:

# 查看存储感知配置 Get-MpPreference | Select-Object -Property StorageSense*

不过实际使用中,这个命令查看的信息比较有限,更多时候还是直接走图形界面的“立即释放空间”更可靠。

4. 关闭休眠文件与调整虚拟内存

两个隐藏的“大文件”经常被忽略:hiberfil.syspagefile.sys。它们的体积不小,而且不会出现在普通磁盘清理界面里。

4.1 关闭休眠文件

如果你的电脑不使用“休眠”功能,可以考虑关闭休眠文件,释放与物理内存大小相关的空间。

以管理员身份打开 PowerShell 或 CMD,执行:

# 关闭休眠功能并删除 hiberfil.sys powercfg /h off

执行后C:\hiberfil.sys会自动消失。如果后续需要恢复休眠功能,执行:

# 重新开启休眠 powercfg /h on

注意:关闭休眠后,笔记本的“盖盖子睡眠”不受影响,但“休眠”和“快速启动”功能会受影响。快速启动依赖休眠文件,所以如果你的开机速度依赖快速启动,建议不要关闭休眠文件,而是把它的体积调小:

# 将休眠文件缩小为物理内存的 40% powercfg /h /type reduced

4.2 调整虚拟内存

虚拟内存文件pagefile.sys默认占用 C 盘空间。如果你的内存足够大(16GB 以上),可以把它迁移到 D 盘或 E 盘。

操作路径:右键“此电脑” → 属性 → 高级系统设置 → 性能设置 → 高级 → 虚拟内存更改 → 取消“自动管理所有驱动器的分页文件大小” → 选中 C 盘 → 设置为“无分页文件” → 选中 D 盘 → 设置为“系统管理的大小” → 确定后重启。

注意:迁移虚拟内存不会提升性能,只是把文件挪到别的盘,适合 C 盘空间紧张但其他盘空间充足的场景。如果你不确定怎么配置,可以保持默认“系统管理的大小”,不要手动设置过大。

4.3 关闭系统还原或调整还原空间

系统还原点是 C 盘空间的隐性占用。右键“此电脑” → 属性 → 系统保护 → 选择 C 盘 → 配置 → 调整“最大使用量”为 5% 到 10%,或者直接点击“删除”清除已有还原点。

关闭系统还原可以释放几个 GB,但代价是失去还原点恢复能力。建议保留一个较小的还原空间,不要完全关闭。

5. 迁移用户目录和第三方软件缓存

清理 C 盘空间的另一条路是“迁移”,把大文件移动到其他盘。如果你装了 Docker、WSL、VS Code、ComfyUI 这类工具,它们的缓存目录可能占了 10GB 到 50GB 以上。

5.1 修改用户级工具缓存路径

先看几个最常见的“C 盘杀手”:

VS Code 缓存

VS Code 的扩展和缓存目录位于:

C:\Users\用户名\.vscode C:\Users\用户名\AppData\Roaming\Code

可以通过命令行启动参数--extensions-dir指定扩展目录,或者直接修改快捷方式:

# 创建扩展目录并启动 VS Code code --extensions-dir "D:\VSCodeExtensions"
pip 缓存

Python 开发者的 pip 缓存默认在:

C:\Users\用户名\AppData\Local\pip\Cache

迁移方式:

# 设置 pip 缓存路径 pip config set global.cache-dir D:\pip_cache
npm / pnpm / yarn 缓存
# npm 缓存迁移 npm config set cache D:\npm_cache # pnpm 存储路径迁移 pnpm config set store-dir D:\pnpm_store # yarn 缓存迁移 yarn config set cache-folder D:\yarn_cache
HuggingFace 模型缓存

AI 方向的同学一定会遇到这个问题,HuggingFace 的模型默认缓存到:

C:\Users\用户名\.cache\huggingface

迁移方式:

# 设置 HF_HOME 环境变量 setx HF_HOME "D:\hf_cache"

或者把.cache目录整体迁移,再通过环境变量指向新位置。ComfyUI 的模型如果默认装在C:\Users\用户名\ComfyUI\models.cache下,也可以按相同思路处理。

5.2 迁移 Windows 用户文件夹

Windows 的“下载”“文档”“桌面”默认都在 C 盘。如果你 C 盘空间不大,建议把这三个文件夹迁移到 D 盘。

操作路径:右键“下载”文件夹 → 属性 → 位置 → 移动 → 选择 D 盘目标文件夹 → 应用。系统会自动弹窗询问是否将现有文件移动到新位置,选“是”。

文档和桌面同样处理。这样可以避免后续大型文件继续堆积在 C 盘。

5.3 迁移 Docker Desktop 虚拟磁盘

Docker Desktop 默认虚拟磁盘位置在:

C:\Users\用户名\AppData\Local\Docker\wsl\disk\docker_data.vhdx

迁移方法:在 Docker Desktop 设置里找到 Resources → Advanced → Disk image location,修改到其他盘。修改前建议先确认没有大量容器在运行。

5.4 清理旧版 WSL 发行版

如果你装了 WSL,虚拟磁盘默认也在 C 盘:

C:\Users\用户名\AppData\Local\Packages\CanonicalGroupLimited*

查看所有发行版:

wsl --list --verbose

导出不需要的发行版到 D 盘:

wsl --export Ubuntu D:\ubuntu_backup.tar

注销发行版以释放 C 盘空间:

wsl --unregister Ubuntu

后续再通过导入方式重新使用:

wsl --import Ubuntu D:\WSL\Ubuntu D:\ubuntu_backup.tar

这是比较高级的操作,建议只在有备份的前提下执行。

6. 第三方软件专项清理

系统自带清理解决不了所有问题,很多软件会把缓存写在 AppData 目录里,手动删最直接。

6.1 清理微信/QQ 缓存

微信的缓存目录通常在:

C:\Users\用户名\Documents\WeChat Files C:\Users\用户名\Documents\xwechat_files

微信 PC 版内置了缓存清理功能,在“设置 → 文件管理 → 存储空间管理”中可以直接清理图片、视频和文件缓存。建议把“文件保存位置”直接改到 D 盘,从源头上避免 C 盘膨胀。

QQ 的缓存目录和微信类似,登录后在设置里修改文件存储路径即可。

6.2 清理浏览器缓存

Chrome、Edge 的缓存目录在 AppData 里,通常在:

C:\Users\用户名\AppData\Local\Google\Chrome\User Data\Default\Cache C:\Users\用户名\AppData\Local\Microsoft\Edge\User Data\Default\Cache

直接在浏览器设置里“清除浏览数据”,或者用磁盘清理工具清理“Internet 临时文件”即可。

6.3 清理开发工具缓存

JetBrains 全家桶(IDEA、PyCharm、CLion)会建立大量索引和缓存,默认目录是:

C:\Users\用户名\AppData\Local\JetBrains

如果是多个版本连续使用,这个目录可以到 10GB 以上。可以在 JetBrains 设置中修改“System Path”“Index Shared Index”等缓存路径,或者删除旧版本的Local\JetBrains\目录名下的 cache 子目录,不影响项目配置。

6.4 清理剪映、PR、PS 等剪辑软件的缓存

视频剪辑软件的缓存占空间非常夸张。剪映草稿和缓存可以手动指定到 D 盘;PS 的缓存盘设置在“编辑 → 性能 → 暂存盘”,默认可能是 C 盘,改成 D 盘即可。PR 则是在“项目设置 → 暂存盘”里修改。

6.5 清理 Adobe 全家桶的媒体缓存

Adobe 软件的 Media Cache 默认从 C 盘读,占用同样不小。以 PR 为例,路径是:

C:\Users\用户名\AppData\Roaming\Adobe\Common\Media Cache Files

可以在 PR 设置里把 Media Cache 位置改到 D 盘,同时把“自动删除旧缓存”阈值调低。

7. 手动深挖:AppData、WinSxS 和 Windows.old

如果你已经执行了上面所有步骤,C 盘还是红了,大概率是下面几个“硬骨头”还没处理。

7.1 用户目录深挖

用 WizTree 或 TreeSize 再次扫一下C:\Users\用户名,重点看:

AppData\Local\Temp AppData\Local\Docker AppData\Local\Microsoft AppData\Local\Programs AppData\Roaming .cache .npm .pnpm conda

如果发现某个目录特别大,需要单独判断。AppData\Local\Programs里一般是软件本体,如 VS Code、Postman 等,卸载时应该通过“设置 → 应用”,而不是直接删文件夹。AppData\Roaming里通常是一个个软件的配置和缓存,删除前建议先确认是哪个软件。

7.2 使用 DISM 清理 WinSxS

如果C:\Windows\WinSxS超过 10GB,执行一次完整组件清理:

Dism.exe /Online /Cleanup-Image /StartComponentCleanup /ResetBase

/ResetBase会把所有现有更新标记为“不可卸载”,并清除所有旧版本组件,是释放空间最彻底但不可回退的方法。执行时间可能较长,需要保证电源稳定。

7.3 删除 Windows.old

如果你从旧版本升级到新系统,C 盘根目录可能出现Windows.old。确认系统运行正常后,可以通过磁盘清理工具的“以前的 Windows 安装”删除,或者用命令:

# 使用磁盘清理中的“清理系统文件”更安全 cleanmgr /d C:

建议不要在文件资源管理器中直接右键删除,因为部分文件权限复杂,容易报错。

8. C 盘扩容思路:分区调整与风险控制

清理完可删内容后,如果 C 盘剩余空间仍然不足,比如总容量只有 80GB,那更彻底的办法是给 C 盘扩容。

8.1 使用磁盘管理压缩相邻分区

Windows 自带“磁盘管理”可以把相邻分区的未分配空间合并给 C 盘,但前提是两个分区相邻。操作路径:右键“此电脑”→“管理”→“磁盘管理”,在 D 盘上右键“压缩卷”,输入要压缩的大小,得到“未分配”空间后,再在 C 盘上右键“扩展卷”。

这个操作只支持相邻分区,而且不能跨盘扩容。如果 D 盘和 C 盘之间还有恢复分区,扩展卷可能无法选择,需要借助 DiskGenius 等第三方工具处理。

8.2 使用 DiskGenius 等第三方工具

DiskGenius 支持将 D 盘的部分空闲空间合并到 C 盘,操作起来更灵活,但是需要重启进入 PE 环境执行,或者使用 Windows 版本进行操作,关键一步是“调整分区大小”后应用。

重要提醒:分区操作存在数据风险,操作前必须备份重要数据。无论用哪款工具,建议先在虚拟机或测试机上演练一遍。

8.3 终极建议:给新软件重新规划安装路径

很多人的 C 盘满是因为所有软件默认安装到了 C 盘。这里给一个长期策略:

  • 安装新软件时手动把安装目录改到 D 盘或 E 盘。
  • 微信、QQ、浏览器缓存路径全部改到非系统盘。
  • Steam 游戏库通过“Steam → 设置 → 存储 → 添加新库”放到其他盘。
  • 大型开发工具如 Visual Studio、Android Studio、JetBrains 系列都装到非系统盘。
  • 通过环境变量setx设置TEMPTMP到非系统盘,减少系统盘写入压力。

设置全局临时目录的命令如下:

# 将用户级临时目录改到 D 盘 setx TEMP D:\tmp setx TMP D:\tmp

设置后需要注销或重启生效。系统级临时目录依然在C:\Windows\Temp,这个不建议改动,因为部分系统服务依赖默认路径。

9. 常见问题与排查方法

问题现象可能原因排查方式解决方案
删除临时文件时提示文件被占用当前用户正在使用该文件,如浏览器缓存查看提示中的文件路径,关闭对应程序先关闭浏览器或开发工具,再执行删除
磁盘清理中“Windows 更新清理”为灰色已执行过清理,或存在系统更新任务等待 Windows 更新完成后再试先运行 Windows 更新,完成后重启再清理
休眠文件删除后开机变慢快速启动依赖休眠功能检查电源计划设置执行powercfg /h on重新开启休眠
C 盘空间释放后又迅速变满有软件持续写入 C 盘,如微信、Docker用 WizTree 扫描新增大文件修改软件缓存/存储路径到其他盘
WinSxS 目录过大系统更新累计了大量旧组件运行 DISM Analyze 检查可回收空间执行StartComponentCleanup清理
扩展卷选项不可用C 盘右侧没有相邻的未分配空间磁盘管理中查看分区布局使用 DiskGenius 调整分区
C 盘根目录出现 pagefile.sys 无法删除虚拟内存正在使用该文件检查虚拟内存设置在虚拟内存设置中迁移到其他盘并重启
Windows.old 删除失败权限不足或文件被系统占用使用管理员权限运行磁盘清理在磁盘清理中点击“清理系统文件”后再删除
AppData 占用过大但找不到具体软件多个软件缓存分散在 AppData 子目录使用 WizTree 按目录逐层查看定位到具体子目录后修改对应软件缓存路径

10. 最佳实践:一套可执行的 C 盘保养方案

清理是一次性的,但空间管理是长期的。这里给出一套可以每季度执行的保养方案:

  1. 每月执行一次“存储感知 → 立即释放空间”,勾选临时文件和传递优化文件。
  2. 每季度执行一次“磁盘清理 → 清理系统文件”,重点清理 Windows 更新缓存。
  3. 每季度用 WizTree 或 TreeSize 扫描一次 C 盘,观察是否有新的大目录增长。
  4. 保持 C 盘剩余空间不低于总容量的 20%,否则系统更新和临时文件很容易把 C 盘撑满。
  5. 所有新软件安装时,先自定义安装路径,不要直接用默认的 C:\Program Files。
  6. 微信、QQ、浏览器、开发工具、AI 模型缓存目录,全部提前设置到非系统盘。
  7. 大型下载文件优先下载到 D 盘或 E 盘,不要放在“下载”文件夹里不挪走。
  8. 遇到 C 盘红了不要马上就格式化或重装系统,优先排查 AppData、休眠文件、虚拟内存和 Windows.old 这几个大头。

11. 总结与下一步

C盘清理不是一个“玄学问题”,空间分布是可以通过工具和命令量化的。最值得先尝试的操作有两个:一是用磁盘清理中的“Windows 更新清理”释放系统残留,二是用 WizTree 扫描 AppData 定位缓存大户。先把这两步做完,C 盘通常就能腾出不少空间。

最容易踩的坑有三个:误删C:\Windows\WinSxS里的文件、直接删除pagefile.sys、在分区未备份时执行扩展卷操作。只要记住“系统组件用 DISM 清理、虚拟内存在设置里调整、分区操作先备份”,就不会出大问题。

如果你按本文操作后 C 盘还是不够用,下一步就是给 C 盘扩容或者重新规划软件安装路径。建议先把“微信缓存、Docker 虚拟磁盘、HuggingFace 模型缓存、JetBrains 缓存”这四个大户迁移到其他盘,再决定是否需要扩容。空间清理只是开始,让 C 盘保持健康的关键还是长期的使用习惯和定期的空间审计。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询