Visual Studio Code升级至1.60.0版本后集成终端(CWD)异常问题
我之前升级VS Code到1.60.0版本时也遇到过几乎一模一样的终端问题,折腾了一阵终于搞定了,给你几个亲测有效的解决方法:
解决VS Code WSL终端配置异常的步骤
1. 确认默认终端的全局配置优先级
有时候版本升级会悄悄重置部分配置,或者工作区配置覆盖了全局设置:
- 打开VS Code设置(快捷键
Ctrl+,),搜索terminal.integrated.defaultProfile.windows - 确保它的值是你的WSL发行版准确名称,比如
"Ubuntu-20.04"或者"WSL: Ubuntu-20.04"(可以在终端下拉菜单里看到精确的名称) - 注意区分全局设置和工作区设置,优先在全局设置里确认,避免工作区的局部配置干扰
2. 修复「在集成终端中打开」的关联与CWD配置
这个功能的终端关联是单独配置的,而且CWD参数需要绑定到具体的终端 profile:
- 搜索
terminal.integrated.automationShell.windows,将其值设为你的WSL发行版对应的配置项,比如"wsl.exe"或者完整路径"C:\\Windows\\System32\\wsl.exe" - 更稳妥的方式是直接自定义WSL终端的profile,强制指定CWD:
在settings.json里添加或修改如下配置:
保存后重启VS Code,再试试「在集成终端中打开」功能"terminal.integrated.profiles.windows": { "Ubuntu-20.04": { "path": "C:\\Windows\\System32\\wsl.exe", "args": ["-d", "Ubuntu-20.04"], "cwd": "${fileDirname}" } }, "terminal.integrated.defaultProfile.windows": "Ubuntu-20.04"
3. 清除终端缓存并重置配置
如果上面的方法都没效果,可能是缓存或配置冲突导致的:
- 关闭所有VS Code窗口
- 打开文件资源管理器,输入
%APPDATA%\Code\User,备份你的settings.json文件 - 暂时移除文件中所有和终端相关的配置项,重启VS Code后重新配置终端参数
- 可选:删除
%APPDATA%\Code\CachedData中对应1.60.0版本的缓存文件夹,清除旧缓存
4. 检查WSL默认发行版设置
有时候WSL本身的默认发行版被修改,会导致VS Code调用错误:
- 打开PowerShell,输入命令:
确保你的Ubuntu 20.04是WSL的默认发行版,这样VS Code调用wsl --set-default Ubuntu-20.04wsl.exe时会直接打开它
内容的提问来源于stack exchange,提问作者reatoide
相关产品推荐
相关产品推荐

