删插件后extensions文件夹仍庞大,因插件解压后体积达安装包2~3倍,且旧版本(如ms-python.python-2021.9.1191016588)及-backup/-old目录不会自动清除;Cache和CachedData更占空间,常超5GB,需关闭VSCode后手动清理。

为什么删了插件,extensions 文件夹还是几百 MB?
卸载插件只删了 extensions 下对应目录,但很多扩展(比如 ms-python.python、ms-vscode.cpptools)安装时会解压出完整 node_modules、预编译二进制、语言服务器可执行文件,体积常是 .vsix 安装包的 2~3 倍;更麻烦的是,旧版本残留(如 ms-python.python-2021.9.1191016588)和带 -backup 或 -old 后缀的目录不会自动清除。
- Windows 路径是
%USERPROFILE%\AppData\Roaming\Code\Extensions,不是%LOCALAPPDATA%或%APPDATA%\Code - Insiders\Extensions - Linux/macOS 对应
~/.vscode/extensions,可用du -sh ~/.vscode/extensions/* | sort -hr | head -10快速定位“体积大户” - 别信资源管理器“修改日期”排序——有些插件更新后不改时间戳,得看实际大小
Cache 和 CachedData 比 extensions 还吃空间?
是的。VSCode 的 Cache 存 HTTP 请求响应、Marketplace 搜索结果、扩展元数据;CachedData 存语法高亮 token、语义着色缓存、工作区符号索引快照。长期未清理的用户,这两处加起来常超 5GB,且删除后 VSCode 启动时会按需重建,不影响功能。
- Windows:
%APPDATA%\Code\Cache、%APPDATA%\Code\CachedData - macOS:
~/Library/Caches/com.microsoft.VSCode(比 Application Support 下的缓存还大) - Linux:
~/.cache/Code(注意不是~/.config/Code) - 必须关掉所有
Code.exe进程再删,否则部分文件被占用,PowerShell 报错 “Access is denied”
怎么用 PowerShell 一行清掉最占空间的几类缓存?
手动进文件夹删容易漏、卡顿、误删,PowerShell 批量处理更稳。以下命令在普通用户权限下运行即可,无需管理员:
Remove-Item -Path "$env:APPDATA\Code\Cache\*" -Recurse -Force
Remove-Item -Path "$env:APPDATA\Code\GPUCache\*" -Recurse -Force
Remove-Item -Path "$env:APPDATA\Code\CachedData\*" -Recurse -Force
Get-ChildItem "$env:USERPROFILE\.vscode\extensions" | Where-Object { $_.Name -match '-old$|-backup$|202[0-2]\.' } | Remove-Item -Recurse -Force
最后一行用正则筛出明显过时的插件目录(覆盖 2020–2022 年老版本),避免误删当前启用的插件(它们通常含 2023/2024 或无年份)。
真正难清理的插件缓存藏在哪?
不是所有缓存都落在 extensions 或 Cache 目录里。有些插件会绕过 VSCode 管理,把数据写进系统级临时区或全局路径:
-
ms-vscode.cpptools的ipch缓存:在%LOCALAPPDATA%\Microsoft\vscode-cpptools\ipch,得单独删,且要先关 VSCode -
Remote - SSH的服务端缓存:在远程机器的~/.vscode-server,本地~/.vscode-server-bin也可能残留旧版本 - 某些终端增强插件(如
ms-vscode.azurecli)会在%LOCALAPPDATA%\Programs\Azure CLI或%TEMP%写临时解压包 - 查插件源码或文档里的
context.globalStoragePath实际落盘位置——不查,就永远找不到
这类路径没有统一规律,必须结合插件行为逐个确认,否则清理完重启 VSCode,几个小时后又涨回几 GB。











