Windows已完全采用Linux,而WSL2则使之无缝顺畅。
您可以通过以下方式访问发行版的终端:
-
单击其开始菜单图标
-
在Powershell或命令提示符处输入
wsl
或bash
-
使用第三方终端选项(例如Cmder,ConEmu和Hyper)启动配置文件
%windir%\system32\bash.exe ~
-
通过按Ctrl+ Shift+P并键入/选择Terminal来将Linux设置为VS Code中的默认Shell:选择Default Shell,然后选择WSL Bash。
Windows Terminal (可从Microsoft Store下载:https://www.microsoft.com/store/apps/9n0dx20hk701)提供了进一步的选择,但您不会后悔安装它。新的应用程序功能:
-
支持WSL2,SSH,Powershell,cmd和其他命令行
-
多个选项卡和拆分窗格
-
可配置的主题,背景图像和透明效果
-
搜索框
-
自定义键绑定
-
GPU加速文字渲染
-
美观的新字体Cascadia Code
-
资源使用率低(每个选项卡通常10MB)
-
自动更新(如果使用Microsoft Store)
-
文档教程(https://docs.microsoft.com/windows/terminal/)
-
而且它是开源的!
如何安装Windows Terminal {#howtoinstallwindowsterminal}
安装Windows Terminal的最简单方法是通过Microsoft Store:
ms-windows-store://pdp/?ProductId=9n0dx20hk701
如果此链接失败,请尝试在浏览器中打开Microsoft Store或从Windows"开始"菜单中启动Microsoft Store应用程序并搜索"终端"。
注意:注意不要选择早期的" Windows Terminal Preview"应用程序。
点击获取并等待几秒钟以完成安装。
如果您无权访问商店,则可以从GitHub下载最新版本。
在Windows终端的应用程序图标,现在在Windows开始菜单。为了更容易访问,请右键单击该图标,然后选择"固定到开始"或"更多",然后选择"固定到任务栏"。
Windows Terminal入门
首次运行时,Windows Terminal以Powershell作为默认配置文件启动。下拉菜单可用于启动其他选项卡并访问设置:
尽管可以在全局设置中禁用生成,但是Terminal会自动为您安装的所有WSL发行版和Windows Shell生成配置文件。
管理标签和窗格
通过单击+图标或Ctrl+ Shift+打开默认配置文件的新标签T。要打开其他配置文件的标签,请从下拉菜单中选择该标签,或按Ctrl+ Shift+ N,其中N是配置文件的编号。
按Alt+ Shift+D复制并拆分窗格。每次使用时,活动窗格都会沿最长轴分成两部分:
强制创建:
-
垂直窗格中,按Alt+ Shift++或
-
水平窗格,按Alt+ Shift+-
要在新窗格中打开另一个配置文件,请在Alt从下拉菜单中选择时按住该键。
按住Alt并使用光标键在键盘上的活动窗格之间切换。可以通过按住Alt+Shift并使用光标键相应地调整大小来调整窗格的大小。
可以通过双击文本来重命名选项卡。您还可以通过右键单击标签并选择菜单选项来更改名称或颜色:
这只会影响当前标签页;它不会永久更改配置文件。
要关闭活动窗格或选项卡,请按Alt+ Shift+W或输入终端的标准退出命令(通常为exit)。
字体大小
活动终端的文本大小可以使用Ctrl++和Ctrl+调整大小-。或者,按住Ctrl并滚动鼠标滚轮。
卷动
使用滚动条浏览终端输出。或者,按住Ctrl并按下光标上移,光标下移Page Up或Page Down使用键盘进行导航。
搜索
按Ctrl+ Shift+F打开搜索框:
输入任何术语,然后使用向上和向下图标搜索终端输出。单击该Aa图标可以激活和取消激活大小写匹配。
复制和粘贴
默认情况下,复制和粘贴必然Ctrl+ Shift+C和Ctrl+ Shift+V分别,虽然Ctrl+C和Ctrl+V也可以工作。
注意:请警惕Ctrl+C可以终止Linux应用程序,因此Shift建议使用。
全局设置中提供了一个自动选择时复制选项,您还可以通过右键单击鼠标来粘贴当前剪贴板项目。
设定值
可从下拉菜单或Ctrl+ ,(逗号)访问设置。该配置在单个settings.json
文件中定义,因此可能会提示您选择文本编辑器。VS Code是一个不错的选择,尽管如果您希望在不使用颜色编码和语法检查的情况下进行编辑,则记事本就可以了。
settings.json
控制项:
-
全局设置,适用于所有配置文件
-
配置文件设置,用于定义配置文件
-
自定义配色方案设置,以及
-
绑定设置
该文件使用以下格式:
// This file was initially generated by Windows Terminal{
// general settings, e.g.
"initialRows": 40,
// profile settings
"profiles":
{
"defaults":
{
// settings that apply to all profiles
}
"list":
[
// list of individual profiles, e.g.
{
"guid": "{81d1dceb-c123-5678-90a1-123abc456def}",
"name": "Windows PowerShell",
"commandline": "powershell.exe"
},
{
"guid": "{91d1dceb-c123-5678-90a1-123abc456def}",
"name": "Ubuntu",
"source": "Windows.Terminal.Wsl"
}
]
}
// custom color schemes, e.g.
"schemes": [
{
"name": "My new theme",
"cursorColor": "#FFFFFF",
"selectionBackground": "#FFFFFF",
"background" : "#0C0C0C",
"foreground" : "#CCCCCC"
}
],
// custom key bindings, e.g.
"keybindings:
[
{ "command": "find", "keys": "ctrl+shift+f" }
]}
默认值在中定义defaults.json
。在下拉菜单中Alt单击"设置",按住不放即可将其打开。
警告:请勿更改默认文件!使用它来查看默认设置,并在必要时在中添加或更改设置settings.json
。
全局设置
以下全局设置是最有用的,尽管在终端文档中记录了更多的全局设置。
"defaultProfile"
定义启动Windows终端时用作默认配置文件的GUID。
设置"copyOnSelect"
为true
自动将选定的文本复制到剪贴板,而无需按Ctrl+ Shift+ C。
设置"copyFormatting"
为false
仅复制纯文本而没有任何样式。(我希望这是所有应用程序的默认设置!)
将"initialColumns"
和设置"initialRows"
为水平和垂直尺寸的字符数。
"tabWidthMode"
可以设置为:
-
"equal"
:每个标签的宽度相同(默认) -
"titleLength"
:每个标签都设置为其标题的宽度,或者 -
"compact"
:不活动的标签会缩小到其图标的宽度。
"disabledProfileSources"
设置一个防止配置文件自动生成的数组。例如:
"disabledProfileSources": [
"Windows.Terminal.Wsl",
"Windows.Terminal.Azure",
"Windows.Terminal.PowershellCore"
],
这将禁用所有生成的配置文件。删除您要保留的任何一个。
个人资料设置
新配置文件由定义创建一个对象组中"profiles"
,"list"
阵列。一个WSL2 Ubuntu示例:
{
"guid": "{91d1dceb-c123-5678-90a1-123abc456def}",
"name": "Ubuntu",
"source": "Windows.Terminal.Wsl",
"startingDirectory": "//wsl$/Ubuntu/home/username/",
"colorScheme": "Tango Dark",
"useAcrylic": true,
"acrylicOpacity": 0.75,
"hidden": false},
每个配置文件均使用以下设置进行定义:
| 设置 | 描述 |
|------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| "guid"
| 唯一标识符(必填)。对于新的配置文件,可以在guidgen.com上在线生成GUID。 |
| "source"
| 配置文件生成器。仅在自动添加了配置文件且不得对其进行编辑时使用。 |
| "commandline"
| 假设未"source"
设置,则运行的可执行文件。例如,这可能是SSH命令,例如"ssh yourname@domain.com"
|
| "startingDirectory"
| 目录中的壳开始于对于WSL发行版,这是最好设置为"//wsl$/Ubuntu/home/username/"
那里username
的用户在安装过程中创建 |
| "name"
| 下拉菜单中显示的个人资料名称 |
| "tabTitle"
| 标签标题中显示的名称 |
| "suppressApplicationTitle"
| 设置true
为"tabTitle"
或强制"name"
bash |
| "icon"
| 下拉菜单和标签中显示的图标的完整路径,例如"C:/images/tux.png"
。24位PNG是最好的选择;不幸的是,不支持SVG |
| "hidden"
| 如果设置true
,则配置文件不显示在下拉菜单中 |
| "fontFace"
| 使用特定的字体 |
| "fontSize"
| 使用特定的字体磅值整数 |
| "fontWeight"
| 使用特定的字体粗细。这可以是一个整数的OpenType或关键词:"normal"
,"thin"
,"extra-light"
,"light"
,"semi-light"
,"medium"
,"semi-bold"
,"bold"
,"extra-bold"
,"black"
,"extra-black"
|
| "padding"
| 在窗口边缘的文本周围填充。可以设置一个,两个或四个逗号分隔的值,例如"1, 2, 3, 4"
分别设置左,上,右和下 |
| "antialiasingMode"
| 抗锯齿方法。设置为"grayscale"
(默认值)"cleartype"
,或"aliased"
|
| "cursorShape"
| 游标类型。设置为"bar"
(默认), ,"vintage"
,"underscore"
,"filledBox"
或者"emptyBox"
|
| "cursorHeight"
| "vintage"
光标的高度,定义为25
和之间的整数100
|
| "cursorColor"
| 光标颜色,定义为"#rgb"
或"#rrggbb"
|
特定于主题的设置包括:
| 设置 | 描述 |
|----------------------------|-------------------------------------------------------------------|
| "colorScheme"
| 定义的配色方案的名称defaults.json
或"schemes"
列表中的列表settings.json
(请参见下文) |
| "useAcrylic"
| 设置true
为使用毛玻璃背景效果 |
| "acrylicOpacity"
| 丙烯酸的不透明度从0
(完全透明)到1
(完全不透明) |
| "backgroundImage"
| 背景图像的完整路径,例如 "C:/images/background.png"
|
| "backgroundImageOpacity"
| 背景图像的不透明度从0
(完全透明)到1
(完全不透明) |
最后,添加"experimental.retroTerminalEffect": true
一个配置文件以获得复古的CRT效果!...
配色方案设置
"colorScheme"
可以将每个配置文件设置为中包含的任何配色方案的名称defaults.json
。例如:
"Campbell"
还有其他的方法列表:
"Campbell Powershell"
"One Half Dark"
"One Half Light"
"Tango Dark"
"Tango Light"
"Vintage"
创建自己的配色方案
您可以在中的"schemes"
数组中定义自己的方案对象settings.json
。每种颜色均以十六进制值定义。例如:
"schemes": [
{
"name": "My New Theme",
"foreground": "#EEEEEE",
"background": "#111111",
"cursorColor": "#FFFFFF",
"black": "#000000",
"red": "#CC0000",
"green": "#4E9A06",
"yellow": "#C4A000",
"blue": "#3465A4",
"purple": "#75507B",
"cyan": "#06989A",
"white": "#EEEEEE",
"brightBlack": "#555753",
"brightRed": "#EF2929",
"brightGreen": "#8AE234",
"brightYellow": "#FCE94F",
"brightBlue": "#729FCF",
"brightPurple": "#AD7FA8",
"brightCyan": "#34E2E2",
"brightWhite": "#FFFFFF"
}],
然后可以通过将该方案添加"name"
到配置文件的"colorScheme"
设置中来使用该方案。例如:
"colorScheme": "My New Theme"
绑定设置
中的"keybindings"
数组settings.json
会覆盖或补充中设置的默认键绑定defaults.json
。每个键绑定都定义为带有"command"
和的对象"keys"
。例如:
// Ctrl + Shift + F to open the search box{ "command": "find", "keys": "ctrl+shift+f" },
在某些情况下,"command"
可能是"action"
具有一个或多个参数的应用程序。例如:
// Ctrl + Shift + 1 to open the first profile in a new tab{
"command": { "action": "newTab", "index": 0 },
"keys": "ctrl+shift+1"},
的"keys"
值接受改性剂ctrl+,shift+和alt+随后:
| 类型 | 键 |
|-------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 功能键 | f1-f24
|
| 字母数字键 | a-z
, 0-9
|
| 符号键 | -
,=
,[
,]
,\
,;
,'
,,
,.
,/
|
| 光标键 | down
,left
,right
,up
,pagedown
,pageup
,pgdn
,pgup
,end
,home
,plus
|
| 动作键 | tab
,enter
,esc
,escape
,space
,backspace
,delete
,insert
|
| 数字键盘 | numpad_0-numpad_9
,numpad0-numpad9
,numpad_add
,numpad_plus
,numpad_decimal
,numpad_period
,numpad_divide
,numpad_minus
,numpad_subtract
,numpad_multiply
|
例如,如果您想使用Ctrl+打开搜索框F,则可以在"keybindings"
数组中添加一行settings.json
:
"keybindings":[
{ "command": "find", "keys": "ctrl+f" }]
搜索框也将用Ctrl+ Shift+打开,F因为该设置是在defaults.json
-中定义的,除非您将组合键分配给另一个命令。
命令行选项
Windows Terminal可以通过运行快捷方式或任何Windows或Linux终端启动wt.exe
。支持以下选项:
| 选项 | 描述 |
|-------------------------|-------|
| --help
,-h
,-?
,/?
| 显示帮助 |
| --maximized
, -M
| 发射最大化 |
| --fullscreen
, -F
| 启动全屏 |
您还可以传递由分号分隔的命令列表。命令用于定义新的选项卡和窗格以及其他控制参数:
| 命令 | 参数 | 描述 |
|--------------|-----------------------------------------------------------------------------------------------------------|---------|
| new-tab
| --profile
或者-p
,--startingDirectory
或者-d
,commandline
,--title
| 打开一个新标签 |
| split-pane
| --horizontal
或-H
,--vertical
或-V
,--profile
或-p
,--startingDirectory
或-d
,commandline
,--title
| 打开一个新窗格 |
| focus-tab
| --target
要么 -t
| 聚焦标签 |
例子
以下示例必须从标准cmd
命令行或快捷方式执行。
使用Ubuntu
和Windows Powershell
标签打开Windows终端:
wt -p "Ubuntu" ; new-tab -p "Windows PowerShell"
打开Windows终端用Ubuntu
,Windows Powershell
以及Command Prompt
配置文件在不同的窗格:
wt -p "Ubuntu" ; split-pane -V -p "Windows PowerShell" ; split-pane -H -p "Command Prompt"
Windows终端文档中提供了从Linux Shell或Powershell启动Windows Terminal的更多示例。
终端对待
我希望您喜欢Windows Terminal的介绍。如前所述,它是WSL2的理想伴侣。它快速,可配置,外观精美,并提供Windows和Linux开发的所有优势。