Code Runner 可配置自动删除 Windows 下编译生成的 .exe 临时文件,通过在 executorMap 的 c/cpp 命令末尾添加 && del $fileNameWithoutExt.exe 实现;Mac/Linux 用 rm 替代 del。

Code Runner 运行后自动删 .exe 文件
Windows 下 C/C++ 编译生成的 hello.exe、main.exe 等文件,本质是临时产物,不删就会越积越多。Code Runner 支持在命令末尾追加清理动作,无需额外脚本。
- 打开
settings.json(设置 → 搜索code-runner.executorMap→ “在 settings.json 中编辑”) - 修改或添加
c和cpp的执行器配置,注意&&链式执行和路径拼接:
{ "code-runner.executorMap": {
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt.exe && $dir$fileNameWithoutExt.exe && del $fileNameWithoutExt.exe",
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt.exe && $dir$fileNameWithoutExt.exe && del $fileNameWithoutExt.exe"
}}
关键点:del 命令必须放在最后,且不带路径前缀($dir),否则在非当前目录运行会失败;Mac/Linux 用户需把 del 换成 rm,并确保 g++ 可执行。
保存时自动删行尾空格和多余空行
files.trimTrailingWhitespace 是 VSCode 原生能力,不依赖插件,但默认关闭。它只处理每行末尾的空格/\t,不影响代码逻辑。
- 项目根目录下创建
.vscode/settings.json,写入:{"files.trimTrailingWhitespace": true} - 若要连同“结尾换行符”一起规范,加一行:
"files.insertFinalNewline": true - 连续空行不能靠这个删——它对纯换行符无效;真要压缩,用查找替换正则:
^s*$(\r\n|\n|\r)s*$(\r\n|\n|\r)s*$(\r\n|\n|\r)→ 替换为$1$2(保留一个换行)
插件缓存损坏导致语言服务失效?清 *-cache 目录
Python/TypeScript 插件更新中断后,会在 ~/.vscode/extensions/ 下留下 ms-python.python-2024.12.0-cache 这类文件夹。它们不是插件本体,而是解压失败的残留,会导致“无法启动语言服务器”或跳转失效。
- 先彻底退出 VSCode:任务管理器杀光所有
Code.exe、Code Helper.exe、node.exe - 进
~/.vscode/extensions/(Windows 是%USERPROFILE%\.vscode\extensions),只删名字以-cache结尾的整个文件夹 - 别碰
ms-python.python-2024.12.0这种主目录——那是插件本身,删了就真没了 - 重启后 VSCode 会自动重下并解压最新版,语言服务恢复
为什么删完缓存,下次打开又占几 GB?
VSCode 基于 Chromium,Cache 和 GPUCache 是渲染层缓存,每次打开大文件、预览 Markdown、访问扩展市场都会写入。它不自动清理,也不按 LRU 淘汰。
- 必须关进程再删:
%APPDATA%\Code\Cache和%APPDATA%\Code\GPUCache(Windows) - Remote 开发(SSH/WSL)用户额外注意:
~/.vscode-server或%USERPROFILE%\AppData\Local\Programs\Microsoft VS Code Insiders\bin\vscode-server里也有独立缓存,不清理照样吃空间 - 删完首次启动稍慢,但不会丢
settings.json或已打开文件;如果立刻又涨回去,大概率是后台进程没杀干净,或你正在用带本地模型的插件(如新版 Pylance)


















