vscode 占用空间暴增主因是用户数据目录中的缓存和旧插件残留,而非安装包本身;windows 对应 %appdata%\code,macos 为 ~/library/application support/code,linux 是 ~/.config/code 与 ~/.cache/code。

VSCode 占用空间暴增,90% 是缓存和旧插件残留,不是安装包本身——直接删错目录会导致配置丢失或启动失败。
VSCode 安装目录 vs 用户数据目录,别搞混了
很多人一上来就去 C:\Users\{用户名}\AppData\Local\Programs\Microsoft VS Code(Windows)或 /Applications/Visual Studio Code.app(macOS)里翻文件,其实这里只是可执行程序本体,通常只占 300–500MB,改不了多少空间。真正吃磁盘的是用户级数据目录,它完全独立于安装路径:
- Windows:默认在
%APPDATA%\Code(即C:\Users\{用户名}\AppData\Roaming\Code),不是Local或Code - Insiders - macOS:
~/Library/Application Support/Code,不是~/Library/Caches/com.microsoft.VSCode(那是另一处缓存) - Linux:
~/.config/Code(配置)+~/.cache/Code(运行时缓存)
误删安装目录里的 resources 或 chrome_elf.dll 可能导致启动报错;而删错 %APPDATA%\Code 下的 User 文件夹,会丢掉所有设置、快捷键、主题偏好——这些必须保留。
extensions 文件夹为什么删了插件还那么大?
卸载插件只从 UI 上移除,VSCode 不自动清理磁盘残留。你看到的 ms-python.python-2021.9.1191016588 这类带年份的目录,基本是已停用的老版本;-backup、-old 后缀的也是“幽灵目录”。它们体积常是原始 .vsix 包的 2–3 倍,因为解压后含完整 node_modules、预编译二进制、语言服务器可执行文件。
- Windows 清理命令(PowerShell,关掉所有 Code.exe 后运行):
Get-ChildItem "$env:USERPROFILE\.vscode\extensions" | Where-Object {$_.Name -match '-old$|-backup$|202[0-2]\.'} | Remove-Item -Recurse -Force - macOS/Linux 推荐先看谁最占空间:
du -sh ~/.vscode/extensions/* | sort -hr | head -5 - 别信资源管理器“修改日期”——有些插件更新不改时间戳,得按实际大小判断
Cache 和 CachedData 比 extensions 还吃空间?
是的。%APPDATA%\Code\Cache 存 Marketplace 搜索结果、扩展元数据、HTTP 响应;%APPDATA%\Code\CachedData 存语法高亮 token、符号索引快照、语义着色缓存。长期未清理的用户,这两处加起来常超 5GB。
- 删除安全:VSCode 启动时会按需重建,不影响功能
- 必须关掉所有 VSCode 进程再删,否则 PowerShell 报
Access is denied - Windows 一键清空(PowerShell):
Remove-Item -Path "$env:APPDATA\Code\Cache\*" -Recurse -ForceRemove-Item -Path "$env:APPDATA\Code\CachedData\*" -Recurse -ForceRemove-Item -Path "$env:APPDATA\Code\GPUCache\*" -Recurse -Force - macOS 对应路径是
~/Library/Caches/com.microsoft.VSCode,注意不是Application Support下那个
哪些目录绝对不能手动删?
User 目录下 settings.json、keybindings.json、snippets 是你的个性化配置核心,删了就得重配;workspaceStorage 虽然存工作区临时状态,但删了可能丢失调试断点、折叠状态等上下文——除非确认对应项目已废弃,否则别碰。
- 可删但要谨慎:
logs(日志)、Crashpad(崩溃报告)、CachedExtensionVSIXs(插件安装包缓存) - 千万别删:
User整个文件夹、Machine(机器级配置)、Local Extension Installer(正在安装中的插件临时区) - 想彻底隔离?启动时加
--user-data-dir参数指定新路径,旧目录就可放心清
最常被忽略的点:ipch(Windows 下 %USERPROFILE%\AppData\Local\Microsoft\vscode-cpptools\ipch)专为 C/C++ IntelliSense 缓存,单个项目能到几 GB,关掉 VSCode 后直接删无副作用——但它不在 %APPDATA%\Code 下,容易漏掉。











