VSCode一键清理缓存文件_解决编辑器卡顿与异常报错
VSCode启动慢、索引卡顿主因是Cache和State目录膨胀;可安全删除Cache,State删除会重置UI状态但不丢配置;扩展缓存需手动清理.cache等子目录;命令行日志code --log trace可精准定位问题。 VSCode 启动慢、文件索引卡住,大概率是 Cache 和 State
VSCode启动慢、索引卡顿主因是Cache和State目录膨胀;可安全删除Cache,State删除会重置UI状态但不丢配置;扩展缓存需手动清理.cache等子目录;命令行日志code --log trace可精准定位问题。

VSCode 启动慢、文件索引卡住,大概率是 Cache 和 State 目录膨胀了
如果你发现VSCode打开大项目时CPU占用率飙升,全局搜索或跳转定义变得迟缓,甚至Ctrl+P文件切换都出现明显延迟,还时不时弹出Unable to resolve workspace file这类错误,先别急着怪内存不够或插件冲突。问题的根源,很可能藏在本地那些不断膨胀的缓存文件里。
VSCode本身没有提供一键清理的按钮,但其内部的缓存机制——尤其是Cache和State目录,以及各种扩展生成的临时数据——会随着使用时间越积越多,最终导致性能瓶颈。关键路径就在用户数据目录下,不同系统位置略有不同:
- Windows:
%APPDATA%\Code\Cache、%APPDATA%\Code\State - macOS:
~/Library/Application Support/Code/Cache、~/Library/Application Support/Code/State - Linux:
~/.config/Code/Cache、~/.config/Code/State
这里有个简单的区分:直接删除整个Cache目录通常是安全的,它存放的是纯粹的临时缓存。而State目录则保存着窗口布局、最近打开的文件列表、代码折叠状态等用户界面状态信息。删除State会重置这些UI状态,让你感觉像新装了一样,但请放心,你的代码、核心配置和扩展都不会丢失。
别碰 Extensions 目录,但可以精准清空扩展的缓存子目录
很多卡顿其实并非来自VSCode本体,而是由扩展自己生成的缓存引发的。比如ESLint的.eslintcache、Prettier的格式化中间文件、Python扩展的__pycache__或语言服务器缓存。这些文件通常深埋在扩展安装目录的子文件夹里,手动寻找确实麻烦。
更稳妥的做法是什么呢?先完全关闭VSCode,然后执行以下操作:
- 进入你系统的扩展目录(例如macOS是:
~/Library/Application Support/Code/Extensions/)。 - 针对里面的每一个扩展文件夹,仔细检查是否存在诸如
node_modules/.cache、dist/.cache、out/.cache这类子目录,或者根目录下的.eslintcache、.prettiercache等文件。 - 只删除这些明确带有
cache字样的目录或文件,务必保留package.json和扩展的主逻辑文件。
这里必须划两条重点红线:第一,Extensions这个根目录本身绝对不能删除,否则所有插件都会丢失;第二,不要图省事在扩展文件夹里运行rm -rf node_modules,因为很多扩展的运行依赖于此。
Developer: Toggle Developer Tools 里看不到缓存问题,得看终端日志
通过Ctrl+Shift+I调出的VSCode内置开发者工具,主要用来排查渲染层的问题,对于磁盘I/O阻塞或缓存加载失败这类“幕后”问题,往往无能为力。真正有价值的线索,藏在启动日志里。
你需要通过命令行启动VSCode并开启详细日志追踪:
code --log trace --prof-startup
然后仔细观察输出内容,重点关注以下几类关键词:
- 频繁出现
Failed to read from cache→ 这直接指向缓存文件已损坏。 - 出现
Scanning large folder且耗时超过5000毫秒 → 这暗示State目录中保存的工作区元数据体积过大了。 - 报错
Extension host terminated unexpectedly→ 这很可能是某个扩展的缓存数据触发了Node.js的内存限制,导致扩展宿主进程崩溃。
这类日志信息往往比图形界面的弹窗报错更早出现,也更精确。一旦你发现某个扩展ID(例如esbenp.vscode-eslint)反复出现在错误堆栈的前几行,那么优先去清理这个扩展内部的缓存子目录,大概率能药到病除。
一键脚本不是万能的,State 清理后要重新信任文件夹
市面上有一些Shell或PowerShell脚本,号称能自动清理Cache和State。用它们固然省事,但存在一个硬伤:从VSCode 1.84版本开始,引入了“文件夹信任”机制,而每个文件夹的trusted信任标记就保存在State目录里。一旦清空State,再次打开任何项目时,都会强制弹出信任确认对话框,并且部分高级功能(如调试、任务运行器)在确认前默认处于禁用状态。
因此,更合理的维护策略是分两步走:
- 日常维护:只清理
Cache目录以及各扩展内部的缓存子目录。这个操作几乎没有副作用。 - 彻底重置:当你决定清理
Cache和State时,清理完成后首次启动VSCode,记得主动点击右下角弹出的Trust Folder按钮,并勾选“记住此选择”,以避免每次打开都重复确认。
另外,还有一个更精细的操作:State目录下有个workspaceStorage文件夹,里面是按工作区路径哈希值命名的子目录,专门存放对应工作区的扩展状态。如果你只是某个特定项目卡顿,可以尝试只删除这个项目对应的哈希目录,而无需动整个State,影响面更小。
Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
















