Windows 终端:启动时预定义选项卡

Windows 终端:启动时预定义选项卡

是否可以启动带有(多个)选项卡的 Windows 终端,每个选项卡位于一个配置的工作目录上?

原因是,我通常每天都手动执行相同的步骤:启动相同的几个 shell,然后在每个 shell 上 cd 到特定路径。例如

  1. GitBash 到我的工作区
  2. Cmd 到我的工作区中的建筑目录
  3. Ubuntu bash 一些数据生成应用程序
  4. ...

如果能将这些步骤自动化的话,那就太酷了。

这个问题有点类似于使用预定义选项卡打开终端而是针对新的 Windows 终端。

答案1

我认为创建自定义快捷方式至少可以部分解决您的问题。

  1. 在桌面任意位置单击右键->新建->快捷方式
  2. 输入您想要的启动配置,例如:

wt ; new-tab -p "Command Prompt" -d C:\Users\Donatas\Workspace ; split-pane -p "Ubuntu"

  • wt-打开 Windows 终端
  • new-tab - 打开新标签页
  • 拆分窗格 - 拆分屏幕(您可以垂直和水平拆分选项卡)
  • -p 指定配置文件,例如 Ubuntu
  • -d 指定配置文件的起始目录

更多信息:https://devblogs.microsoft.com/commandline/windows-terminal-preview-v0-9-release/

  1. 输入快捷方式名称。
  2. 运行快捷方式,您将获得两个选项卡,并且第二个选项卡应该被分成两部分。如下所示:

具有多个选项卡的 Windows 终端

  1. 您可以选择更改图标、固定到任务或开始栏。

答案2

  1. 打开 Windows 终端
  2. 打开设置 (Ctrl+,)
  3. 点击“打开 JSON 文件”
  4. 使用您的启动配置添加(或修改)可选参数“startupActions”(例如@Donatas Repečka 所述)。唯一的区别是 - 您不需要在启动时输入“wt”。
  5. 保存文件并重新打开 WT。

不要忘记字符串应该被正确地转义。

我的样本:

    "startupActions": "new-tab -p \"Command Prompt\" --title \"mytab\" -d C:\\Users\\blabla ; new-tab -p \"Command Prompt\" --title \"othertab\" -d C:\\Users\\otherbla ,

关于以下几点:

  • 在我的示例中,末尾有一个逗号,因为存在下一行配置
  • 如果你在开头(或结尾)放置“;”,WT 将在开头(或结尾)打开默认选项卡
  • 使用 Windows 快捷方式的解决方案非常棒,但是你不能使用很长的字符串(超过 260 个符号),所以它可能不适合你

答案3

由于我没有发表评论的声誉,因此我将发布答案。

wt ; new-tab -p "Command Prompt" -d C:\Users\Donatas\Workspace ; split-pane -p "Ubuntu"

此命令仅适用于 Windows 命令 ( cmd) shell,不适用于 Power Shell。WSL 中的命令也不同。请参阅CLI 参考wt更多细节。

在 Power Shell 中它看起来像这样:

wt `; new-tab -p "Command Prompt" -d C:\Users\Donatas\Workspace `; split-pane -p "Ubuntu"

答案4

这个简单的单行命令创建了一个带有 3 个 powershell 分割窗口的选项卡,以及一个带有 3 个 bash 分割窗口的选项卡;

  • 当你在 cmd.exe 上时
wt powershell.exe ; nt bash --noprofile --norc ; sp bash --noprofile --norc ; sp bash --noprofile --norc ; focus-tab -t 0 ; sp powershell.exe ; sp powershell.exe
  • 当你使用 powershell.exe 或 wsl bash 时
cmd.exe /c "wt powershell.exe ; nt bash --noprofile --norc ; sp bash --noprofile --norc ; sp bash --noprofile --norc ; focus-tab -t 0 ; sp powershell.exe ; sp powershell.exe"

在此处输入图片描述

相关内容