VSCode v1.81.x Windows下首次启动终端不执行shellArgs求助
问题解决:VSCode首次启动PowerShell终端未执行shellArgs
问题原因
你的配置存在两个关键错误:
- 错误地将完整的
powershell启动命令作为参数传递给默认终端进程,导致首次启动时VSCode终端初始化逻辑冲突,重启终端时偶然绕过了冲突。 - 路径中的反斜杠未转义,JSON解析时会出错,导致命令无法正确执行。
修复方案
方案一:使用终端Profiles配置(推荐,符合VSCode规范)
替换.vscode/settings.json中的原有配置为以下内容:
"terminal.integrated.profiles.windows": { "PowerShell (Venv)": { "source": "PowerShell", "args": [ "-NoExit", "-Command", "& 'C:\\dist\\venvs\\trk-fullstack-test\\Scripts\\Activate.ps1'" ] } }, "terminal.integrated.defaultProfile.windows": "PowerShell (Venv)", "terminal.integrated.shellIntegration.enabled": true
此方式直接定义一个绑定虚拟环境的PowerShell终端配置,并设置为默认终端,每次启动都会自动执行激活命令,避免进程嵌套问题。
方案二:修正原有shellArgs配置
若坚持使用旧版shellArgs方式,需去掉多余的powershell前缀并转义路径反斜杠:
"terminal.integrated.shellIntegration.enabled": true, "terminal.integrated.shellArgs.windows": [ "-NoExit", "-Command", "& 'C:\\dist\\venvs\\trk-fullstack-test\\Scripts\\Activate.ps1'" ]
此配置直接将激活命令作为参数传递给默认的PowerShell进程,不会产生嵌套执行的冲突。
内容的提问来源于stack exchange,提问作者MortenB
相关产品推荐
相关产品推荐

