Windows Terminal 终极指南

最好的Linux发行版是Windows 10。
上面这句话虽然只是玩笑,但随着微软接连发布 WSL (Windows Subsystem Linux) 和全新的 Windows Terminal,Windows 和 Linux 之间的界限已经开始变得模糊了。许多非Linux不可事情已经可以在Windows上实现,需要频繁在Linux和Windows之间切换的场景也不需要双系统或者虚拟机了。
本文旨在介绍 Windows Terminal 的配置方法,并与大家交流分享一些 Windows Terminal 的使用心得和技巧。
目前(2020年4月初)Windows Terminal 仍处于预览版阶段,版本号v0.10.781.0,Windows Terminal 的某些功能可能还不完善,或者在后续的更新中发生变化。

1、配置文件

在标签栏的下拉菜单中可以找到 Settings 选项。目前的设置只能通过编辑 profiles.json 文件来更改,没有图形界面。单击 Settings 选项即可打开 profiles.json 文件。
Tips:按住 Alt 键再点击 Settings 选项可以打开一个 defaults.json 文件,里面存放的是 Windows Terminal 各种设置的默认值。需要注意的是,这些默认值目前是硬编码在代码中的,修改这个文件不会应用在程序中,这个文件只是给你看的。
配置文件的结构并不复杂,大体可以分为四个部分:

全局设置
最外侧的是全局设置。包括窗口大小、默认启动配置、深色\浅色主题等。其实下面的三项也是全局设置的其中之一,但是很有必要将它们单独提出来讨论。
启动环境配置 profiles
启动不同 shell 环境时加载的配置列表,这个列表会显示在标签栏的下拉菜单中。如菜单中的 Windows PowerShell、cmd等,可以针对不同的 shell 环境配置不同的字体、背景、颜色等等。
颜色主题 schemes
自定义配色方案列表。
按键绑定 keybindings
自定义快捷键列表。
1.1、全局设置
下图是 defaults.json 中全局设置的默认值:

alwaysShowTabs:显示标签栏。如果 alwaysShowTabs 和 showTabsInTitlebar 同时设置为 false,那么标签栏会被隐藏,此时可以通过按下 ctrl + T 键显示标签栏。
defaultProfile:默认启动的 shell 环境。通过GUID来指定启动环境配置中的某一项。默认是 PowerShell 的启动配置。
initialCols:启动时窗口的列数。默认值是120。
initialRows:启动时窗口的行数。默认值是30。
requestedTheme:深色\浅色主题。可以是"dark"深色、"light"浅色、"system"跟随系统。默认值是"system"。
showTabsInTitlebar:设置为 true 时,将标签显示在窗口标题栏中,并隐藏窗口标题。设置为 false 时,会显示窗口标题栏,标签栏会显示在窗口标题下方。需要重启窗口生效。
showTerminalTitleInTitlebar:控制窗口标题栏的内容。设置为 true 时,窗口标题会显示为当前标签的标题;设置为 false 时,窗口标题固定显示“Windows Terminal”。

tabWidthMode:控制标签宽度。可以是"equal":所有标签等宽,或"titleLength":根据标题长度变化。默认值是"equal"。
snapToGridOnResize:设置为 true 时,调整窗口大小会自动吸附到最近的字符边界,设置为 false 时,调整窗口大小则会平滑地变化。
wordDelimiters:双击选词时用于确定单词分界的分割字符。
confirmCloseAllTabs:设置为 true 时,如果打开了多个标签页,在关闭窗口时会弹出确认对话框。设置为 false 则会直接关闭窗口而不会弹出确认对话框。
除了上述选项之外,全局设置还有下列选项:
copyOnSelect:设置为 true 时,鼠标选词后会自动复制所选内容。默认值是 false。
copyFormatting:设置为 true 时,复制的内容会包含格式信息(字体、字号、颜色等)。设置为 false 时,只复制纯文本。默认值是 false。
initialPosition:启动时窗口左上角在屏幕上的坐标。格式为"x,y"。有多个显示器时,这个坐标是相对于主显示器的坐标。如果 launchMode 设置为"maximized",窗口会最大化显示在这个坐标所在的显示器上。
launchMode:启动模式。可以是"default":默认窗口,或"maximized":最大化窗口。
rowsToScroll:控制鼠标滚轮滚动一格页面所滚动的行数。设置为0或"system"会跟随系统设置。
1.2、启动环境配置 profiles
作为一款终端,Windows Terminal 可以连接各种不同的 shell。安装后,Windows Terminal 已经为我们配置好了 PowerShell、cmd 以及 Azure Cloud Shell 的环境,如果你的系统安装了 WSL,它还会为你配置 WSL 环境。

profiles 包含两个部分:defaults 和 list。在 defaults 中设置的项目会对所有配置生效。list 则是包含所有配置的列表。如果某个项目在 list 中和 defaults 中都设置了,则 list 中的设置会覆盖 defaults 中的设置。

如果你想加入一个新的配置,只需要在 list 中增加一个配置即可,下面我以 Git Bash 为例来演示配置各个项目的作用。

guid:每一个配置都必须有一个GUID,并且不同配置的GUID不可重复,你可在网上搜索在线GUID生成器,或者使用Visual Studio菜单栏->工具->创建GUID 来创建一个GUID。
name:配置的名字,会显示在下拉菜单中。
commandline:shell 可执行文件的路径。上图的路径是Git Bash的默认安装路径。
Tips:Windows使用反斜杠"\"来分割路径,而在json字符串中表示反斜杠需要两个反斜杠来转义"\\"。但是在Windows Terminal配置文件中可以用正斜杠"/"来代替反斜杠以避免转义。
Tips:在后面加上命令行参数,可以实现很多方便的功能,例如启动后自动ssh到指定的服务器。这一点在后文有介绍。
hidden:是否隐藏该配置。如果设置为true,则配置不会显示在下拉菜单中,可以用来隐藏系统自动生成的配置(例如Azure Cloud Shell,系统生成的配置无法被删除,不常用的话可以用这个选项隐藏)。
startingDirectory:启动时shell所在的路径。
Tips:通常来说,启动路径只支持Windows下的路径,如果你想在启动wsl时进入家目录,可以如下设置:"//wsl$/DistroName/home/username"。注意修改其中对应wsl发行版的名字以及你的用户名。
closeOnExit:是否在退出shell或启动失败时关闭面板。可以是"graceful":在键入 exit 命令或进程正常退出时关闭面板(启动失败或进程异常退出时不会关闭面板),或"never":从不关闭面板。可以用 true 或 false 分别代替"graceful"或"never"。
colorScheme:颜色主题的名字。图中的"Campbell"是自带的颜色主题之一,可以在 defaults.json 中查看其他自带的颜色主题。关于自定义颜色主题,将在下一节介绍。
cursorColor:光标的颜色。十六进制表示的颜色值,格式为"#RRGGBB"。
cursorShape:光标的形状。可以是 "bar"( ┃)、 "emptyBox"( ▯ )、 "filledBox"( █ )、 "underscore"( ▁ ) 或 "vintage"( ▃ )。默认值是"bar"。
fontFace:字体。能用什么字体取决于你的系统安装了什么字体。
fontSize:字号。默认值是12。
historySize:命令历史记录的最大行数。默认值是9001。
icon:显示在标签和菜单中的图标。
Tips:官方推荐使用32×32像素的点阵图(png, gif, ico都可以)。可以避免缩放带来的性能和画质损耗。
padding:边距,显示字符的区域与窗口边界的距离。格式可以用一个数字"#"同时定义所有边距,两个数字"#, #"定义左右边距和上下边距,或四个数字"#, #, #, #"分别定义左、上、右、下边距。默认值是"8, 8, 8, 8"。
snapOnInput:设置为 true ,输入时窗口会自动跳转到输入行;设置为 false ,输入时窗口不会自动跳转。
useAcrylic:设置为true来启用亚克力效果,Windows Fluent Design 大法。默认值是false。不过显卡太弱的话会影响性能。

antialiasingMode:抗锯齿模式。可以是"grayscale":灰度,"cleartype":清晰,或"aliased":无抗锯齿。效果如下图所示,默认值是"grayscale"。推荐"cleartype"模式,字体更明亮锐利。

除了上述选项外,环境配置还有下列选项:
acrilicOpacity:启用亚克力效果时控制窗口透明度。0到1之间的浮点数,0表示完全透明,1表示完全不透明。默认值是0.5。
background:背景颜色。十六进制表示的颜色值,格式为"#RRGGBB"。注意,如果同时还设置了 colorScheme,则这个选项会覆盖 colorScheme 中的设置。
backgroundImage:背景图片的路径。
backgroundImageOpacity:背景图片的透明度。0到1之间的浮点数,0表示完全透明,1表示完全不透明。
backgroundImageAlignment:背景图片的对齐方式。可以是 "bottom"、 "bottomLeft"、 "bottomRight"、 "center"、 "left"、 "right"、 "top"、 "topLeft"或"topRight"。默认值是"center"。
backgroundImageStretchMode:背景图片的拉伸模式。可以是 "fill"、 "none"、 "uniform" 或 "uniformToFill"。默认值是"uniformToFill"。

cursorHeight:当光标形状是"vintage"时,控制光标的高度。25到100之间的整数,单位是相对于行高的百分比。
experimental.retroTerminalEffect:实验性功能,不保证将来的版本会继续存在。设置为true可以启用模拟CRT显示器效果,装逼利器。效果如下图所示,显卡太弱的话会影响性能。需要重启窗口才能生效。

foreground:前景色,即普通文本显示的颜色。注意,同 background 一样,如果同时还设置了 colorScheme,则这个选项会覆盖 colorScheme 中的设置。
scrollbarState:滚动条状态。可以是"visible":显示滚动条,或"hidden":隐藏滚动条。
selectionBackground:被选中文本的背景色。注意,同 background 一样,如果同时还设置了 colorScheme,则这个选项会覆盖 colorScheme 中的设置。
suppressApplicationTitle:忽略应用标题。设置为 true 时,标签标题固定显示 tabTitle 设置的值,设置为 false 时,标签标题根据当前运行的应用变化。
tabTitle:启动时的默认标签标题。(某些shell可能会忽略这个值,例如bash)。
完成你的配置之后,保存配置文件,即可在下拉菜单中看到新增的Git Bash选项,然后就可以愉快地在Windows Terminal中使用Git Bash了。

1.3、颜色主题 schemes
在defaults.json文件中可以看到Windows Terminal内置的颜色主题,例如:

其中 name 字段定义了该主题的名字,可以在环境配置中通过这个名字来使用这个主题。
你可以在 profiles.json 中增加自定义的主题。例如:

上图设置了一个名为VSCode的自定义主题,这个颜色配置是VSCode内置Terminal的默认配色。你可根据自己的喜好配置喜欢的颜色,也可以上网搜索,发现更多好看好用的配色。
Tips:在VSCode中,按ctrl+shift+p打开命令面板,搜索“颜色主题”(color theme),找到“开发者:使用当前设置生成颜色主题”(Developer: Generate Color Theme From Current Settings)。该命令会根据当前颜色主题生成一个配色文件。在"colors"字段中找到名称中带有"terminal.ansi****"系列的颜色,即是当前VSCode终端中应用的颜色配置。(如果你的当前主题使用的是默认配色,那么这些值可能会被注释)
1.4、按键绑定 keybindings
同样,在defaults.json中可以看到默认的快捷键设置。例如 ctrl + shift + w 可以关闭面板、ctrl + shift + c可以复制所选文本、ctrl + shift + v可以粘贴文本,等等。此外,在下拉菜单中,各个环境配置右边也可以看到快捷键提示,通过ctrl + shift + 数字键在新标签中打开相应的shell环境。
你可以在profiles.json中添加新的快捷键。自定义快捷键格式如下:

其中 command 指定要执行的命令。若无需参数或采用默认参数,将其指定为对应命令的名称即可;若需带参数则需要用第二种格式,通过对应的参数名称来指定参数值。同一个命令可以绑定多组快捷键。
而 keys 指定了对应的按键组合,前方的修饰键通过加号"+"连接。可用的修饰键包括ctrl、alt、shift。如果多个命令绑定了相同的快捷键组合,那么上方的命令会优先生效。
如果你想取消某个快捷键组合(可能是快捷键冲突),可以通过将 command 设置为 null 实现。例如:{ "command": null, "keys": "ctrl+shfit+w" },即可取消这组快捷键组合。
可以绑定为快捷键的命令名称如下:
closePane:关闭面板。默认快捷键是"ctrl+shift+w"。
closeTab:关闭标签。
closeWindow:关闭窗口。默认快捷键是"alt+f4"。
copy:复制选定文本。默认快捷键是"ctrl+shift+c"和"ctrl+insert"。可选参数名称:trimWhitespace ,布尔类型,设置为 true 时,删除行尾的空白字符并保留换行符;设置为 false 时,保留空白字符并删除换行符,默认值是true。
copyTextWithoutNewlines:。复制选定文本,不带换行符。等同于{ "action": "copy", "trimWhitespace": false }。
decreaseFontSize:减小字号。默认快捷键是"ctrl+-"(或者按住ctrl鼠标滚轮往下)。
duplicateTab:复制当前标签页。默认快捷键是"ctrl+shift+d"。
increaseFontSize:增大字号。默认快捷键是"ctrl+="(或者按住ctrl鼠标滚轮往上)。
moveFocus:在标签页的面板之间移动焦点。可选参数名称:direction,指定焦点移动的方向,可以是"up", "down", "left", "right",默认值是"left"。
moveFocusDown:向下移动焦点,默认快捷键是"alt+down"。等同于{ "action": "moveFocus", "direction": "down" }。
moveFocusLeft:向左移动焦点,默认快捷键是"alt+left"。等同于{ "action": "moveFocus", "direction": "left" }。
moveFocusRight:向右移动焦点,默认快捷键是"alt+right"。等同于{ "action": "moveFocus", "direction": "right" }。
moveFocusUp:向上移动焦点,默认快捷键是"alt+up"。等同于{ "action": "moveFocus", "direction": "up" }。
newTab:新建标签。可选参数:index:整数,指定shell环境配置在下拉菜单中的序号,注意这个序号是从0开始的,默认值是0。profile:字符串,指定shell环境配置的GUID或名称,和 index 同时存在时会忽略 index 参数。commandline:字符串,使用该参数指定的命令,会覆盖配置中的设置。tabTitle:使用该参数指定的标签标题,会覆盖配置中的设置。startingDirectory:使用该参数指定的起始路径,会覆盖配置中的设置。
newTabProfile0:在新标签中打开配置0。默认快捷键是"ctrl+shift+1"。等同于{ "action": "newTab", "index": 0 }。
newTabProfile1:在新标签中打开配置1。默认快捷键是"ctrl+shift+2"。等同于{ "action": "newTab", "index": 1 }。
newTabProfile2:在新标签中打开配置2。默认快捷键是"ctrl+shift+3"。等同于{ "action": "newTab", "index": 2 }。
newTabProfile3:在新标签中打开配置3。默认快捷键是"ctrl+shift+4"。等同于{ "action": "newTab", "index": 3 }。
newTabProfile4:在新标签中打开配置4。默认快捷键是"ctrl+shift+5"。等同于{ "action": "newTab", "index": 4 }。
newTabProfile5:在新标签中打开配置5。默认快捷键是"ctrl+shift+6"。等同于{ "action": "newTab", "index": 5 }。
newTabProfile6:在新标签中打开配置6。默认快捷键是"ctrl+shift+7"。等同于{ "action": "newTab", "index": 6 }。
newTabProfile7:在新标签中打开配置7。默认快捷键是"ctrl+shift+8"。等同于{ "action": "newTab", "index": 7 }。
newTabProfile8:在新标签中打开配置8。默认快捷键是"ctrl+shift+9"。等同于{ "action": "newTab", "index": 8 }。
nextTab:切换到下一个标签页。默认快捷键是"ctrl+tab"。
openNewTabDropdown:打开下拉菜单。默认快捷键是"ctrl+shift+space"。
openSettings:打开设置。默认快捷键是"ctrl+,"。
paste:粘贴复制的文本。默认快捷键是"ctrl+shift+v"和"shift+insert"。
prevTab:切换到上一个标签页。默认快捷键是"ctrl+shift+tab"。
resetFontSize:重置字号。默认快捷键是"ctrl+0"。
resizePane:调整面板大小。可选参数:direction,指定调整的方向,可以是"up", "down", "left", "right",默认值是"left"。
resizePaneDown:将面板分界线向上移动。默认快捷键是"alt+shift+down"。等同于{ "action": "resizePane", "direction": "down" }。
resizePaneLeft:将面板分界线向上移动。默认快捷键是"alt+shift+left"。等同于{ "action": "resizePane", "direction": "left" }。
resizePaneRight:将面板分界线向上移动。默认快捷键是"alt+shift+right"。等同于{ "action": "resizePane", "direction": "right" }。
resizePaneUp:将面板分界线向上移动。默认快捷键是"alt+shift+up"。等同于{ "action": "resizePane", "direction": "up" }。
scrollDown:向下滚动一行。默认快捷键是"ctrl+shift+right"。
scrollDownPage:向下滚动一页。默认快捷键是"ctrl+shift+pgdn"。
scrollUp:向上滚动一行。默认快捷键是"ctrl+shift+up"。
scrollUpPage:向上滚动一页。默认快捷键是"ctrl+shift+pgup"。
splitHorizontal:水平拆分面板。默认快捷键是"alt+shift+-"。等同于{ "action": "splitPane", "split": "horizontal"}。
splitVertical:垂直拆分面板。默认快捷键是"alt+shift+plus"。等同于{ "action": "splitPane", "split": "vertical"}。
splitPane:拆分面板。可选参数:split,可以是"horizontal":水平拆分,"vertical":垂直拆分,或者"auto":自动,默认值是自动。index:整数,指定新面板中shell环境配置在下拉菜单中的序号,注意这个序号是从0开始的,默认值是0。profile:字符串,指定新面板中shell环境配置的GUID或名称,和 index 同时存在时会忽略 index 参数。commandline:字符串,使用该参数指定的命令,会覆盖配置中的设置。tabTitle:使用该参数指定的标签标题,会覆盖配置中的设置。startingDirectory:使用该参数指定的起始路径,会覆盖配置中的设置。
switchToTab:切换标签。可选参数:index:整数,标签页的序号,注意这个序号是从0开始的,默认值是0。
switchToTab0:切换到0号标签。默认快捷键是"ctrl+alt+1"。等同于{ "action": "switchToTab", "index": 0 }。
switchToTab1:切换到1号标签。默认快捷键是"ctrl+alt+2"。等同于{ "action": "switchToTab", "index": 1 }。
switchToTab2:切换到2号标签。默认快捷键是"ctrl+alt+3"。等同于{ "action": "switchToTab", "index": 2 }。
switchToTab3:切换到3号标签。默认快捷键是"ctrl+alt+4"。等同于{ "action": "switchToTab", "index": 3 }。
switchToTab4:切换到4号标签。默认快捷键是"ctrl+alt+5"。等同于{ "action": "switchToTab", "index": 4 }。
switchToTab5:切换到5号标签。默认快捷键是"ctrl+alt+6"。等同于{ "action": "switchToTab", "index": 5 }。
switchToTab6:切换到6号标签。默认快捷键是"ctrl+alt+7"。等同于{ "action": "switchToTab", "index": 6 }。
switchToTab7:切换到7号标签。默认快捷键是"ctrl+alt+8"。等同于{ "action": "switchToTab", "index": 7 }。
switchToTab8:切换到8号标签。默认快捷键是"ctrl+alt+9"。等同于{ "action": "switchToTab", "index": 8 }。
toggleFullscreen:切换到全屏模式。默认快捷键是"alt+enter"和"f11"。
find:打开查找工具栏。默认快捷键是"ctrl+shift+f"。
2、右键菜单
如果你经常需要从某个特定的文件夹打开终端,那么把在文件管理器的右键菜单中加入“在此处打开终端”命令是非常方便的办法。Windows Terminal从v0.9版本开始支持命令行参数,因此我们可利用这一点在右键菜单中加入快捷启动Windows Terminal的选项,并通过特定的参数启动特定的shell环境。
增加右键菜单需要修改注册表,你可以使用注册表脚本来修改,或者按下Win+R,输入 regedit 运行注册表编辑器直接编辑注册表。
如下图所示的右键菜单中,“在 Git Bash 中打开”、“在 Linux Shell 中打开”、“在 PowerShell 中打开”可以在Windows Terminal中分别启动相应的shell。

注册表脚本如下:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\Background\shell\git-bash-wt]
@="在 Git Bash 中打开"
"Icon"="C:\\Program Files\\Git\\git-bash.exe"
[HKEY_CLASSES_ROOT\Directory\Background\shell\git-bash-wt\command]
@="C:\\Users\\YOURUSERNAME\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe -p \"PROFILE_OF_GIT_BASH\" -d \"%V\""
[HKEY_CLASSES_ROOT\Directory\shell\git-bash-wt]
@="在 Git Bash 中打开"
"Icon"="C:\\Program Files\\Git\\git-bash.exe"
[HKEY_CLASSES_ROOT\Directory\shell\git-bash-wt\command]
@="C:\\Users\\YOURUSERNAME\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe -p \"{PROFILE_OF_GIT_BASH}\" -d \"%V\""
[HKEY_CLASSES_ROOT\Directory\Background\shell\ps-wt]
@="在 PowerShell 中打开"
"Icon"="powershell.exe"
[HKEY_CLASSES_ROOT\Directory\Background\shell\ps-wt\command]
@="C:\\Users\\YOURUSERNAME\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe -p \"PROFILE_OF_POWERSHELL\" -d \"%V\""
[HKEY_CLASSES_ROOT\Directory\shell\ps-wt]
@="在 PowerShell 中打开"
"Icon"="powershell.exe"
[HKEY_CLASSES_ROOT\Directory\shell\ps-wt\command]
@="C:\\Users\\YOURUSERNAME\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe -p \"PROFILE_OF_POWERSHELL\" -d \"%V\""
[HKEY_CLASSES_ROOT\Directory\Background\shell\linux-wt]
@="在 Linux Shell 中打开"
"Icon"="wsl.exe"
[HKEY_CLASSES_ROOT\Directory\Background\shell\linux-wt\command]
@="C:\\Users\\YOURUSERNAME\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe -p \"PROFILE_OF_WSL\" -d \"%V\""
[HKEY_CLASSES_ROOT\Directory\shell\linux-wt]
@="在 Linux Shell 中打开"
"Icon"="wsl.exe"
[HKEY_CLASSES_ROOT\Directory\shell\linux-wt\command]
@="C:\\Users\\YOURUSERNAME\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe -p \"PROFILE_OF_WSL\" -d \"%V\""
请注意wt.exe的路径,必须使用绝对路径。示例的路径是通过Windows App Store安装的默认路径,请将其中的 YOURUSERNAME 改为你的用户名。
其次是 -p 参数指定的profile,就是配置文件中相应profile的名称或者GUID,请根据自己的配置文件修改。
此外,其中的"Icon"指定了菜单项前面显示的图标所在的路径,可以指定一个exe文件或ico文件,系统会自动读取其中的图标。如果你喜欢Windows Terminal的图标,可以在GitHub上找到。在Windows Terminal仓库中搜索terminal.ico就能找到。注意字符串当中的反斜杠"\\"、双引号"\""需要转义。
右键菜单的本质是带参数执行wt.exe,下面介绍wt.exe的命令行参数,格式如下
wt.exe [terminal_parameters]
[new-tab [terminal_parameters]]
[split-pane [-H]|[-V] [terminal_parameters]]
[focus-tab [--target,-t tab-index]|[--next,-n]|[--previous,-p]]
其中[terminal_parameters]: [--profile,-p profile-name] [--startingDirectory,-d starting-directory] [commandline]
[terminal_parameters]用于指定打开的shell环境:--profile,-p 选项指定环境配置的名字或者GUID;--startingDirextory,-d 选项指定起始工作路径,覆盖环境配置中指定的路径;commandline 用于指定命令行,同样会覆盖环境配置中指定的命令。
[new-tab [terminal_parameters]]用于打开一个新的标签页,后面可以带[terminal_parameters]参数指定在新标签页中启动的shell配置。
[split-pane [-H]|[-V] [terminal_parameters]]用于拆分当前面板。-H指定水平拆分,-V指定垂直拆分。后面同样可以用[terminal_parameters]参数指定在新的面板中启动的shell环境。
[focus-tab [--target,-t tab-index]|[--next,-n]|[--previous,-p]]用于切换到指定的标签页。用[--target,-t tab-index]指定标签页的序号,或者用[--next,-n]|[--previous,-p]指定切换到前一个或后一个标签页。
同理,你可以在配置文件中添加常用配置,并通过添加右键菜单的方式方便快捷地启动它们。如果你经常需要ssh到远程的服务器,那么下面的配置会非常适合你:(Windows 10可以安装OpenSSH,因此没有wsl的话可以用PowerShell)
{ // 启动WSL并ssh到指定的服务器
"guid": "generate-your-own-guid",
"name": "ssh to server",
"commandline": "wsl.exe ssh user@server.com"
}
3、总结
Windows Terminal尚在预览版阶段,但目前的使用体验已经非常棒了。对UTF-8的支持、GPU加速的界面渲染、Windows Fluent设计风格、更重要的是它开源免费。终于能够一改Windows下糟糕的命令行体验,在图形化的Windows中打开了一扇特殊的窗口。期待Windows Terminal 1.0版本的正式发布。