最有效、最安全的释放C盘空间方式是精准清理WorkspaceStorage,而非全删;它存储各工作区符号索引、搜索快照等持久化数据,单个子目录可达500MB–3GB,因VSCode不自动清理旧项且目录名是哈希值,用户易误判为可删缓存。

直接删 WorkspaceStorage 是最有效、最安全的释放 C 盘空间方式,但必须先彻底关闭 VSCode 和 WSL 实例,否则文件被占用会删不掉或删不全。
为什么 WorkspaceStorage 占空间最多又最容易被误删?
它不是临时缓存,而是每个工作区(尤其是 WSL 或远程项目)生成的符号索引、搜索快照、调试上下文等持久化数据,单个子目录常达 500 MB–3 GB。用户常误以为它是“可自动清理的缓存”,其实 VSCode 从不主动删除旧项——哪怕你半年没打开过那个文件夹,它也一直躺着占 C 盘。
- 路径固定为:
%APPDATA%\Code\WorkspaceStorage(Windows),~/Library/Application Support/Code/WorkspaceStorage(macOS),~/.config/Code/WorkspaceStorage(Linux) - 目录名是哈希值(如
8a2b3c4d...),无法靠名字判断对应哪个项目,得看修改时间 - 删错不会影响 settings.json 或扩展配置,但首次重连该工作区时会慢几秒重建索引
怎么精准删,而不是全盘清空?
全删虽快,但如果你近期频繁切换多个工作区(比如同时维护 Python + Rust + WSL 项目),重建索引可能拖慢启动体验。更稳妥的做法是按需筛选:
- 打开资源管理器,进入
%APPDATA%\Code\WorkspaceStorage,按“修改日期”排序 - 选中所有修改时间早于 90 天的子目录(右键 → 删除)
- 重点盯住那些名字特别长、体积标着“1.2 GB”“2.7 GB”的——它们大概率是已废弃的 WSL 工作区或大型 C++ 项目残留
- 如果用过 Remote - WSL,且已迁移到新发行版,原
ubuntu-20.04对应的 WorkspaceStorage 子目录可放心删
删完为啥空间没立刻释放?
常见错误现象:删完重启 VSCode,任务管理器里仍看到 Code.exe 或 node.exe 在后台跑,导致 Windows 无法真正回收磁盘空间。这是因为:
>跨平台磁盘空间健康管理专家,支持 Windows / macOS / Linux / 鸿蒙(HarmonyOS) 四大系统。 【核心理念】体检→净化→预防 三步法,让磁盘长期保持轻盈。 【v3.0 重大升级】 ✅ 跨平台支持:Windows/macOS/Linux/鸿蒙 四系统全覆盖 ✅ 智能平台检测:自动识别操作系统,匹配最佳清理策略 ✅ 鸿蒙OS适配:基于Linux内核深度优化,支持鸿蒙应用缓存清理 ✅ 多盘扫描:Windows多盘符、macOS多卷、Linux多挂载点自动识别 ✅ 健康评
- Remote - WSL 默认保持 WSL 实例常驻,即使关闭所有窗口
-
WorkspaceStorage中的部分文件可能被 Electron 渲染进程锁住(尤其含searchIndex的子目录) - Windows 文件系统延迟释放(尤其 NTFS 压缩卷或启用了存储感知)
务必执行这三步再删:Ctrl+Shift+P → 输入 Remote-WSL: Close Remote Connection → 终端运行 wsl --shutdown → 任务管理器结束所有 Code.exe 和 node.exe 进程。
长期避免 WorkspaceStorage 膨胀的关键设置
它本身不可禁用,但能限制其增长节奏:
- 在设置中搜索
search.followSymlinks,设为false(避免索引挂载点下的巨量文件) - 编辑
settings.json,添加:"search.exclude": {"**/node_modules/**": true, "**/target/**": true, "**/build/**": true} - 对 C/C++ 项目,关掉
C_Cpp.intelliSenseCachePath自定义路径(防止它在 WorkspaceStorage 外另建大缓存) - 不用的远程连接,手动删掉
%APPDATA%\Code\Remote\下对应条目(如ssh-hosts或containers子目录)
真正麻烦的不是删,而是删完后忘记关 WSL 或留着后台进程——那会导致下次打开时立刻重建一个更大的 WorkspaceStorage 子目录。


















