# [TraeWork的100种用法] 我用 TraeWork 把只剩 3.78 GB 的 C 盘清理到了 28 GB
## 我是谁 & 遇到什么问题
我是一家公司的办公人员,用的是一台 Windows 电脑,C 盘总容量 118 GB。某天系统弹出红色警告——C 盘只剩 **3.78 GB**,连打开文档都卡得不行。我不想重装系统,也没有多余的硬盘可以升级,常规的"磁盘清理"工具又不够用,不知道到底什么东西在占空间,更不知道哪些能删、哪些不能删。
## 我用了 TraeWork 解决了这件事
模式:**Work**
我让 TraeWork 帮我做了一次完整的 C 盘空间诊断和清理,具体用到了这些能力:
- **联网检索**:先让它搜索"C 盘清理最佳实践",它找到了 2026 年最新的深度清理指南,包括 WinSxS 安全清理、社交软件数据迁移、存储感知等方案,作为分析依据。
- **自动化任务(执行 PowerShell 命令)**:它直接在我的电脑上执行了上百条诊断命令,逐层扫描 C 盘每个目录的真实占用,精准定位到 WSL 残留虚拟磁盘、npm 缓存、系统诊断日志、页面文件等"空间杀手"。
- **长上下文 + 多轮推理**:整个清理过程跨了多轮对话,它需要记住每一轮删了什么、释放了多少、哪些被沙箱拦截进了回收站,并在发现"删除后空间没释放"时,逐步排查原因(VSS?硬链接?回收站重定向?),最终通过对照实验定位到根因,并发明了"截断清零法"绕过限制。
## 我做出了什么
经过几轮清理,C 盘可用空间从 **3.78 GB 提升到了约 28 GB**(重启释放页面文件后),总共回收了约 27 GB。核心清理动作包括:
| 清理项目 | 释放空间 | 方式 |
|---|---|---|
| WSL 残留虚拟磁盘 | 5.5 GB | 删除 + 清空回收站 |
| npm 缓存 | 1.62 GB | 删除 + 清空回收站 |
| Temp 临时文件 | 1.13 GB | 删除 + 清空回收站 |
| Windows 诊断日志(ETL) | 1.70 GB | 截断清零 |
| DiagOutputDir 诊断输出 | 0.78 GB | 截断清零 |
| WSL 软件卸载 | 1.05 GB | msiexec 静默卸载 |
| Adobe Acrobat XI Pro 卸载 | 2.27 GB | msiexec 静默卸载 |
| 页面文件缩小 | ~12 GB | 从 14 GB 缩至 2 GB,移至 D 盘 |
| 其他缓存(Chrome/Edge/Defender/WPS 等) | ~2 GB | 截断 + 删除 |
**效果:从 3.78 GB 到约 28 GB,目标 20 GB 超额完成。**
## 效果展示
### 清理前:C 盘只剩 3.78 GB
```
FreeGB : 3.78
UsedGB : 115.1
TotalGB : 118.88
```
### 空间大户排查(TraeWork 自动扫描结果)
TraeWork 自动扫描了 C 盘所有主要目录,输出了空间占用排行表,让我一眼看清问题在哪:
```
AppData\Local\wsl\ext4.vhdx 5.50 GB ← WSL残留虚拟磁盘(wsl.exe已不存在)
Program Files (x86)\Microsoft 6.07 GB ← Edge等微软软件
npm-cache\_cacache 1.62 GB ← Node包缓存
Windows\Temp\Whesvc 1.50 GB ← 系统诊断追踪日志
AppData\Local\pnpm\store 1.09 GB ← pnpm包存储
Windows\Installer 1.48 GB ← 安装包缓存
pagefile.sys 14.00 GB ← 页面文件(最大隐形杀手)
```
### 清理后:C 盘恢复到约 28 GB
```
FreeGB : ~28 (重启释放页面文件后)
UsedGB : ~91
TotalGB : 118.88
```
## 经验 & 技巧总结
**1. 删除不等于释放——沙箱会拦截**
TraeWork 运行在沙箱环境里,所有"删除"操作会被重定向到 C 盘回收站,而不是永久删除。所以你会看到文件确实从原位置消失了(Test-Path 返回 False),但可用空间纹丝不动。解决方案:让 TraeWork 执行删除后,**自己去桌面右键回收站→清空回收站**,空间才会真正释放。
**2. 截断清零法——绕过删除限制的奇招**
当删除被拦截时,可以用 .NET API 打开文件并 `SetLength(0)` 把内容清零。文件本身还在(不触发删除拦截),但物理空间被释放了。对 `.etl` 诊断日志、`.merge` 缓存等大文件特别有效。这个方法是 TraeWork 在排查过程中自己发明的。
**3. 页面文件是最大的隐形杀手**
16 GB 内存的电脑,Windows 默认自动管理页面文件,可能分配 14 GB 在 C 盘。但实际峰值使用量可能只有 3-4 GB。把 C 盘页面文件缩小到 2 GB 固定、在 D 盘新建一个补充页面文件,一次就能释放 12 GB,是最立竿见影的单项操作。
**4. DISM 组件清理可能因系统限制失败**
`Dism /Online /Cleanup-Image /StartComponentCleanup` 理论上可以安全回收 WinSxS 旧版本组件(分析显示有 5.43 GB 可回收),但在某些系统环境下会因 TrustedInstaller 的 Scavenge 操作被拒绝(0x80070005)。遇到这种情况不要纠结,转向卸载不用的软件和缩小页面文件同样有效。
**5. 软件卸载是最干净的空间回收方式**
通过 `msiexec /X{产品ID} /qn /norestart` 静默卸载不需要的软件,释放的空间是实打实的,不经过回收站,立即生效。卸载前用注册表查询 `EstimatedSize` 可以预估每个软件的占用大小,精准选择卸载目标。
## 提示词参考
以下是这次清理用到的核心指令模板,供参考:
### 第一步:空间诊断
```
帮我检查一下 C 盘的空间使用情况,逐层扫描各个目录的真实占用大小,
找出空间大户。先从 AppData、Program Files、ProgramData、Windows\Temp
等常见位置开始,输出按大小排序的排行榜。
```
### 第二步:安全清理
```
把以下安全可删的项目清理掉:
1. WSL 残留虚拟磁盘(wsl.exe 已不存在的 ext4.vhdx)
2. npm 缓存(npm cache clean --force 或直接删 _cacache)
3. 用户 Temp 临时文件夹
4. Windows\Temp 下的诊断日志(.etl 文件)
删完后告诉我释放了多少,以及哪些被拦截进了回收站。
```
### 第三步:页面文件优化
```
检查我的页面文件大小和物理内存,如果页面文件占 C 盘超过 8 GB,
帮我把 C 盘页面文件缩小到 2 GB 固定大小,并在 D 盘创建一个
系统管理的页面文件。注意关闭 AutomaticManagedPagefile。
```
### 第四步:软件卸载
```
从注册表读取所有已安装软件及其占用大小(EstimatedSize),
按大小排序,列出 TOP 10。我告诉你哪些可以卸载后,
用 msiexec /X{ID} /qn /norestart 静默卸载。
```