命令行语法
wt
命令行接受两种类型的值:“选项”和“命令” 。 “选项”是一系列标志和其他参数,可以将
wt
命令行的行为作为一个整体来控制。 “命令”提供应该实现的操作或操作列表(以分号分隔)。 如果未指定命令,则默认情况下会将命令指定为
new-tab
。
wt [options] [command ; ]
wt.exe
命令的行为可能会受到 windowingBehavior
属性的影响。 此设置可调整为打开新窗口或打开新标签页之间的默认设置。
若要显示列出可用命令行参数的帮助消息,请输入:wt -h
、wt --help
、wt -?
或 wt /?
。
选项和命令
下面是 wt
命令行支持的命令和选项的完整列表。
如果不存在具有给定 window-id
的窗口,则将使用该 ID/名称创建新窗口。
例如,运行 wt -w _quake
将打开一个新的“quake 窗口”。 再次运行该命令将在现有 quake 窗口中打开一个新选项卡。
New tab 命令
用于创建新选项卡。另请参阅 newTab
操作。
new-tab
、nt
--colorScheme scheme-name
覆盖配置文件的 colorScheme
设置,并将其设置为名称为 scheme-name
的设置中的方案
设置中配色方案的名称
如果在 Windows 终端中更改选项卡的标题并希望该标题保持不变,则必须通过将其设置为 true
来启用 suppressApplicationTitle 选项。
Split-pane 命令
用于创建新的拆分窗格。 另请参阅 splitPane
操作。
split-pane
、sp
--startingDirectory, -d starting-directory
根据分配的起始目录路径创建一个新的拆分窗口窗格。 如果未分配此参数,则将使用默认起始目录。
split-pane
、sp
--title
创建一个带有已分配标题的新拆分窗口窗格。
用作选项卡标题的文本
split-pane
、sp
--tabColor
创建一个已分配选项卡颜色的新拆分窗口窗格。
十六进制颜色为 #RGB 或 #RRGGBB
split-pane
、sp
--size, -s size
创建一个已分配大小的新拆分窗口窗格。
浮点数,指定用小数表示的父窗格部分。 例如,.4
表示父窗格的 40%。
split-pane
、sp
commandline
根据分配的命令行创建一个新的拆分窗口窗格。
包含可选命令的可执行文件
split-pane
、sp
--duplicate, -D
创建一个新的拆分窗口窗格,该窗格是当前窗格的副本。
不适用。 没有其他值要分配。
split-pane
、sp
--suppressApplicationTitle
重写配置文件的 suppressApplicationTilte
设置,并将其设置为 true
split-pane
、sp
--useApplicationTitle
重写配置文件的 suppressApplicationTilte
设置,并将其设置为 false
split-pane
、sp
--colorScheme scheme-name
覆盖配置文件的 colorScheme
设置,并将其设置为名称为 scheme-name
的设置中的方案
设置中配色方案的名称
Focus-tab 命令
用于聚焦窗口中的特定选项卡。 另请参阅 switchToTab
操作。
first
将焦点移动到树中的第一个叶窗格。
previous
将焦点移动到当前窗格之前最近使用的窗格。
nextInOrder
、previousInOrder
按创建顺序将焦点移动到下一个或上一个窗格。
Move-pane 命令
用于在窗口中移动窗格。 另请参阅 movePane
操作。
up
、down
、left
或 right
:将活动窗格与给定方向的窗格交换。
first
:将活动窗格与树中的第一个叶窗格交换。
previous
:将活动窗格与当前窗格之前最近使用的窗格交换。
nextInOrder
、previousInOrder
:按创建顺序将活动窗格与下一个或上一个窗格交换。
命令行参数示例
命令可能会略有不同,具体取决于所使用的命令行。
将参数传递给默认 shell
要启动 Windows 终端实例并让其执行命令,请调用 wt.exe
,然后再调用你的命令。
以下是调用 Windows 终端以传递 ping 命令参数以回显 IP 地址的示例:
wt ping learn.microsoft.com
以下是调用 Windows 终端以使用 PowerShell 命令行打开新选项卡、确认调用 Start-Service 命令并使用 /k
目录中打开的 Windows 命令提示符打开另一个新选项卡的示例:
wt new-tab PowerShell -c Start-Service ; new-tab cmd /k dir
面向特定窗口
下面是如何使用 --window,-w
选项面向特定窗口的示例。
wt -w -1 nt
// Open a new tab in the first-created terminal window with the default profile
wt -w 1 nt
// Open a new tab in the terminal window named foo with the default profile. If foo does not exist, create a new window named foo.
wt -w foo nt
wt -w -1 nt
// Open a new tab in the first-created terminal window with the default profile
wt -w 1 nt
// Open a new tab in the terminal window named foo with the default profile. If foo does not exist then, create a new window named foo.
wt -w foo nt
// Open a new tab with the default profile in the current window
cmd.exe /c "wt.exe" -w 0 nt
// Open a new tab in a new window with the default profile
cmd.exe /c "wt.exe" -w -1 nt
// Open a new tab in the first-created terminal window with the default profile
cmd.exe /c "wt.exe" -w 1 nt
// Open a new tab in the terminal window named foo with the default profile. If foo does not exist then, create a new window named foo.
cmd.exe /c "wt.exe" -w foo nt
执行别名不适用于 WSL 分发。 如果要从 WSL 命令行使用 wt.exe,可以运行 cmd.exe
直接从 CMD 生成它。 /c
选项指示 CMD 在运行后终止。
打开新的配置文件实例
若要打开新的终端实例(在此示例中,该命令将打开名为“Ubuntu-18.04”的配置文件),请输入:
-p
标志用于指定应打开的 Windows 终端配置文件。 将“Ubuntu-18.04”替换为已安装的任何终端配置文件的名称。 这将始终打开一个新窗口。 Windows 终端尚不能在现有实例中打开新选项卡或窗格。
以一个目录为目标
若要指定应该用作控制台起始目录的文件夹(在本例中为 d:\目录),请输入:
cmd.exe /c "wt.exe" -p "Command Prompt" \; split-pane -p "Windows PowerShell" \; split-pane -H wsl.exe
执行别名不适用于 WSL 分发。 如果要从 WSL 命令行使用 wt.exe,可以运行 cmd.exe
直接从 CMD 生成它。 /c
选项指示 CMD 在运行后终止,且 \;
反斜杠 + 分号将命令分隔开来。
-H
标志(或 --horizontal
)指示你希望水平拆分窗格。 -V
标志(或 --vertical
)指示你希望垂直拆分窗格。
多个选项卡和窗格
可以对 new-tab
和 split-pane
命令进行排序,以获取多个选项卡,每个选项卡都具有拆分窗格。 若要打开带有两个选项卡的新终端实例,每个选项卡都有两个运行命令提示符和 WSL 命令行的窗格,每个选项卡位于不同的目录中,请输入:
wt -p "Command Prompt" `; split-pane -V wsl.exe `; new-tab -d c:\ `; split-pane -H -d c:\ wsl.exe
PowerShell 使用分号,用于分隔语句。 若要将分号 ; 解释为 wt 命令行参数的命令分隔符,则需要使用反引号转义分号字符。 PowerShell 还具有停止分析运算符 (--%),这指示它停止解释它之后的任何内容,并只逐字传递。
cmd.exe /c "wt.exe" -p "Command Prompt" \; split-pane -V wsl.exe \; new-tab -d c:\\ \; split-pane -H -d c:\\ wsl.exe
执行别名不适用于 WSL 分发。 如果要从 WSL 命令行使用 wt.exe,可以运行 cmd.exe
直接从 CMD 生成它。 /c
选项指示 CMD 在运行后终止,且 \;
反斜杠 + 分号将命令分隔开来。 请注意将 Windows 目录指定为 wsl.exe
的起始目录,需要两个反斜杠 \\
。
若要为每个终端窗格打开带有自定义标题的新终端实例,可使用 --title
参数。 若要在打开多个选项卡时设置每个窗格的标题,请输入:
当为选项卡设置 --tabColor
时,它与此选项卡的第一个窗格相关联。因此,在具有多个窗格的选项卡中,仅当第一个窗格处于焦点时才会应用颜色。 若要设置其他窗格的选项卡颜色,还需要将 --tabColor
参数添加到 split-pane
子命令。 在下面的示例中,创建了一个带有两个窗格的选项卡,并为每个窗格指定了选项卡颜色:
wt new-tab --tabColor '#009999' `; split-pane --tabColor '#f59218'
若要打开具有特定配色方案(而不是配置文件中设置的 colorScheme
)的新终端实例,请使用 --colorScheme
参数。 此参数会覆盖配置文件中定义的值。
PowerShell 中多个命令的示例
Windows 终端使用分号字符 ;
作为分隔符来分隔 wt
命令行中的命令。 遗憾的是,PowerShell 也使用 ;
作为命令分隔符。 若要解决此问题,可以使用以下技巧从 PowerShell 运行多个 wt
命令。 在下面的所有示例中,将创建一个新的终端窗口,其中包含三个窗格:一个运行命令提示符,一个运行 PowerShell,最后一个运行 WSL。
下面的示例不使用 start
运行命令行。 但是,可以通过另外两种方法来对命令行转义:
仅对分号进行转义,使 PowerShell
忽略它们,并将它们直接传递到 wt
。
使用 --%
,因此 PowerShell 会将命令行的其余部分视为应用程序的参数。
wt new-tab "cmd" `; split-pane -p "Windows PowerShell" `; split-pane -H wsl.exe
wt --% new-tab cmd ; split-pane -p "Windows PowerShell" ; split-pane -H wsl.exe
在这两个示例中,新创建的 Windows 终端窗口将通过正确分析所有提供的命令行参数来创建窗口。
但是目前不建议使用这些方法,因为 PowerShell 会等待新创建的终端窗口关闭,然后再将控制权返回给 PowerShell。 默认情况下,在返回到提示符之前,PowerShell 将始终等待 Windows 应用商店应用程序(如 Windows 终端)关闭。 请注意,这与命令提示符的行为不同,后者会立即返回到提示符。
将 Windows 终端可执行文件添加到路径
要将 Windows 终端可执行文件 (wt.exe) 添加到路径,请在 Windows 设置的“管理应用执行别名”页中启用“应用执行别名”。 Windows 终端别名默认处于打开状态,但如果你在访问别名时遇到问题,则可能需要确认一下。
如果在访问应用执行别名时仍然遇到问题,则可能需要检查路径是否包含:%LOCALAPPDATA%\Microsoft\WindowsApps
。 请勿尝试更改 C:\Program Files\WindowsApps
。