VSCode终端 - echo $SHELL显示bash,但我已将shell设置为zsh。

3

我正在使用VS Code v1.44和MacOS Catalina。

我已经将我的macOS终端切换到使用Zsh。在Terminal.app和iTerm.app中,当我尝试以下操作时:

echo $0
echo $SHELL

...我看到了到Zsh的路径(/bin/zsh)

但是当我在VS Code中打开终端时... echo $0显示/bin/zsh和echo $shell显示/bin/bash。

在我的VS Code设置中,我已选择Zsh作为macOS的终端shell。

有人能解释一下(或指导我参考资料),帮助我理解这里发生了什么吗?


嗨,你解决了这个问题吗? - MrWhetherMan
1个回答

0
我不知道你提出这个问题时的答案是什么,但自从 VS Code 1.56(2021 年 4 月)以来,在 VS Code 中配置终端配置文件的方式已经改变。详见https://code.visualstudio.com/updates/v1_56#_profile-improvements。因此,我将考虑到这些更改来回答你的问题。
我建议在你的settings.json 文件中设置以下内容:
"terminal.integrated.defaultProfile.osx": "zsh"

该设置的默认值为null

另请参阅https://code.visualstudio.com/docs/terminal/profiles,其中提到:

Linux和macOS上默认终端配置文件shell默认为$SHELL,Windows上默认为PowerShell。VS Code将自动检测大多数标准shell,然后可配置为默认值。

我不确定该功能是否在您最初发布此问题时的最新版本之后出现。 如果是之后出现的话,这可能会解释您观察到的行为。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接