我正在使用在Ubuntu 20.04 LTS上运行的vscode。我已经设置了我的Ubuntu终端首选项为运行登录Shell(bash)。 现在,我打开vs code,它也会打开集成的bash终端。 我想知道是否在vscode上也启用了运行登录Shell的命令?
我正在使用在Ubuntu 20.04 LTS上运行的vscode。我已经设置了我的Ubuntu终端首选项为运行登录Shell(bash)。 现在,我打开vs code,它也会打开集成的bash终端。 我想知道是否在vscode上也启用了运行登录Shell的命令?
今天我也在寻找相同的东西。我按照这里的文档进行了操作:https://code.visualstudio.com/docs/editor/integrated-terminal#_configuring-profiles
我在settings.json文件中添加了一个"terminal.integrated.profiles.linux"
条目,然后它自动添加了每个可用终端类型的条目。我编辑了bash的条目以添加"args": ["--login"]
,然后打开了一个新的终端标签,新的终端工作正常了。
以下是被添加到settings.json中的完整条目:
"terminal.integrated.profiles.linux": {
"bash": {
"path": "bash",
"icon": "terminal-bash",
"args": ["--login"]
},
"zsh": {
"path": "zsh"
},
"fish": {
"path": "fish"
},
"tmux": {
"path": "tmux",
"icon": "terminal-tmux"
},
"pwsh": {
"path": "pwsh",
"icon": "terminal-powershell"
}
}
您可以运行shopt login_shell
来验证终端是否正在作为登录 shell 运行。如果是,则会打印login_shell on
。
在使用Pop!_OS 22.04和VS Code 1.70时,将以下内容添加到我的用户settings.json
中即可:
{
"terminal.integrated.profiles.linux": {
"zsh (login)": {
"path": "zsh",
"args": ["-l"]
}
},
"terminal.integrated.defaultProfile.linux": "zsh (login)"
}
shopt
是一个 Linux 命令还是 VSCode 命令?我找不到它,但据说如果echo $0
的结果以-
开头,则根据 LinuxHandbook 所述,您正处于登录 shell 中。 - Micah Jbash
部分,集成终端如预期地变成了登录shell。然而,集成终端不再提供code
命令了。这是预期的吗?除了将$HOME/.vscode-server/bin/xxxxxxx/bin/remote-cli
导出到$PATH
之外,是否有其他优雅的方法来解决这个问题? - undefined