如何在Visual Studio代码集成终端中选择不同类型的命令shell

如何在Visual Studio代码集成终端中选择不同类型的命令shell,shell,terminal,visual-studio-code,Shell,Terminal,Visual Studio Code,我查看了有关在VisualStudio代码的集成终端中更改默认命令shell的链接。使用settings.json文件中的以下设置,我成功地将其更改为Git Bash。通过按Ctrl+、组合键或菜单文件,可以打开settings.json文件→ 偏好→ 设置菜单: 集成终端中有一个+符号,借助该符号,您可以使多个终端并行运行,如下面的屏幕截图所示: 我想在terminal#1中加载Git Bash shell,在terminal#2中加载Windows PowerShell,等等。实现相同的相

我查看了有关在VisualStudio代码的集成终端中更改默认命令shell的链接。使用
settings.json
文件中的以下设置,我成功地将其更改为Git Bash。通过按Ctrl+、组合键或菜单文件,可以打开
settings.json
文件→ 偏好→ 设置菜单:

集成终端中有一个+符号,借助该符号,您可以使多个终端并行运行,如下面的屏幕截图所示:

我想在terminal#1中加载Git Bash shell,在terminal#2中加载Windows PowerShell,等等。实现相同的相关配置是什么?

在最新版本(1.15.0)中,您可以

  • 更改设置,然后运行已设置的终端
  • 然后再次更改设置,并按
    +
    符号运行另一种类型的终端
  • 等等
您可以将其放在设置文件中,并取消对所需设置文件的注释

// 64-bit cmd if available, otherwise 32-bit
//"terminal.integrated.shell.windows": "C:\\Windows\\sysnative\\cmd.exe"
// 64-bit PowerShell if available, otherwise 32-bit
//"terminal.integrated.shell.windows": "C:\\Windows\\sysnative\\WindowsPowerShell\\v1.0\\powershell.exe"
// Git Bash
"terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe"
// Bash on Ubuntu (on Windows)
//"terminal.integrated.shell.windows": "C:\\Windows\\sysnative\\bash.exe"

截至2018年6月17日,在Visual Studio代码中,当涉及到更改集成命令shell时,事情变得非常顺利。我在这里列出了所有选项:

  • 在运行中选择不同的命令shell-命令shell的名称本身就是一个命令,用于将当前命令shell切换到目标命令shell。例如,假设我的集成命令shell当前显示Bash,我想立即切换到PowerShell。然后键入命令
    powershell
    ,按Enter键,命令shell将更改为powershell。同样,它也适用于产品中安装的所有其他类型的命令shell
  • 更多命令shell实例-只需按Ctrl+Shift+`(返回勾号)。每次按键盘快捷键组合时,都会添加一个新的命令shell实例
  • 更改默认命令外壳类型的配置-在Visual Studio代码中按F1键并键入,或选择终端:选择默认外壳,如下面的快照所示
  • 选择后,选择默认命令shell以永久更改设置:


    无需不断更改默认的终端设置。安装扩展,对其进行配置,然后
    ctrl-shift-t
    选择要在VS代码内部打开的终端


    Ohh..很有趣。事实上,您的建议也适用于VS代码的较旧版本,例如1.9。我刚才试过了。我一直认为这是一个单一的配置,而且我从来没有在更改配置后点击
    +
    符号。相反,我使用重新启动VisualStudio代码来查看配置更改在终端中生效。很好的回答!请阅读以回答您的问题。在Windows(VS代码版本-1.45.1)上,我注意到命令shell的名称本身就是一个将当前命令shell切换到目标命令shell的命令似乎在所有3个标准命令shell(即cmd、powershell、bash)之间切换仅当
    bash
    设置为默认shell时,否则它仅在cmd和powershell之间切换,而不切换到bash,出现以下错误
    “bash”无法识别
    // 64-bit cmd if available, otherwise 32-bit
    //"terminal.integrated.shell.windows": "C:\\Windows\\sysnative\\cmd.exe"
    // 64-bit PowerShell if available, otherwise 32-bit
    //"terminal.integrated.shell.windows": "C:\\Windows\\sysnative\\WindowsPowerShell\\v1.0\\powershell.exe"
    // Git Bash
    "terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe"
    // Bash on Ubuntu (on Windows)
    //"terminal.integrated.shell.windows": "C:\\Windows\\sysnative\\bash.exe"