Windows Terminal完整指南
在本文中,我們將探討Windows Terminal,它是WSL2的理想配套。它速度快、可配置、外觀漂亮,并且提供了Windows和Linux開發(fā)的所有優(yōu)點(diǎn)。
Windows已經(jīng)完全接受了Linux,而WSL2使它成為一種無縫的樂趣。
你可以通過以下方式訪問發(fā)行版的終端:
- 單擊其開始菜單圖標(biāo)
- 在Powershell或命令提示符下輸入 wsl 或 bash
- 通過啟動(dòng) %windir%\system32\bash.exe ~ 的配置文件使用第三方終端選項(xiàng)(例如Cmder,ConEmu和Hyper)
- 在VS Code中設(shè)置Linux為默認(rèn)shell,方法是按 Ctrl + Shift + P,然后輸入/選擇終端 Terminal: Select Default Shell,然后選擇WSL Bash。
Windows Terminal提供了更多的選擇,但你不會后悔安裝它。新的應(yīng)用功能。
- 支持WSL2,SSH,Powershell,cmd和其他命令行
- 多個(gè)選項(xiàng)卡和拆分窗格
- 搜索框
- 自定義鍵綁定
- GPU加速文字渲染
- 美觀的新字體Cascadia Code
- 資源使用率低(每個(gè)選項(xiàng)卡通常10MB)
- 自動(dòng)更新(如果使用Microsoft Store)
- 好的文檔
- 它是開源的!
如何安裝Windows Terminal
安裝Windows Terminal的最簡單方法是通過Microsoft Store:
- ms-windows-store://pdp/?ProductId=9n0dx20hk701
如果此鏈接失敗,請嘗試在瀏覽器中打開Microsoft Store,或從Windows 開始菜單中啟動(dòng)Microsoft Store應(yīng)用程序并搜索“Terminal”。
注意:注意不要選擇早期的“ Windows Terminal Preview”應(yīng)用程序。

點(diǎn)擊 Get 并等待幾秒鐘以完成安裝。
如果你無權(quán)訪問商店,則可以從GitHub下載最新版本。
Windows Terminal 應(yīng)用圖標(biāo)現(xiàn)在可在 Windows 開始菜單中使用。為方便訪問,右鍵單擊該圖標(biāo)并選擇“鎖定到開始”或“更多”,然后選擇“鎖定到任務(wù)欄”。
Windows Terminal入門
首次運(yùn)行時(shí),Windows Terminal以Powershell作為默認(rèn)配置文件啟動(dòng)。下拉菜單可用于啟動(dòng)其他選項(xiàng)卡并訪問設(shè)置:

終端會自動(dòng)為你安裝的所有WSL發(fā)行版和Windows shell生成配置文件,盡管你可以在全局設(shè)置中禁用生成。
管理標(biāo)簽和窗格
通過單擊 + 圖標(biāo)或 Ctrl + Shift + T 打開默認(rèn)配置文件的新標(biāo)簽。要打開其他個(gè)人資料的標(biāo)簽,請從下拉菜單中選擇該標(biāo)簽,或按 Ctrl + Shift + N ,其中N是個(gè)人資料的編號。
按 Alt + Shift + D 復(fù)制并拆分窗格。每次使用時(shí),活動(dòng)窗格都會沿最長軸分成兩部分:

強(qiáng)制創(chuàng)建:
- 垂直窗格中,按 Alt + Shift + + 或
- 水平窗格,按 Alt + Shift + -
要在新窗格中打開另一個(gè)配置文件,請?jiān)趶南吕藛沃羞x擇時(shí)按住 Alt 鍵。
按住 Alt 鍵,然后使用光標(biāo)鍵在鍵盤上的活動(dòng)窗格之間切換??梢酝ㄟ^按住 Alt + Shift 并使用光標(biāo)鍵相應(yīng)地調(diào)整大小來調(diào)整窗格的大小。
可以通過雙擊文本來重命名選項(xiàng)卡,你還可以通過右鍵單擊標(biāo)簽并選擇菜單選項(xiàng)來更改名稱或顏色:

這只會影響當(dāng)前標(biāo)簽頁;它不會永久更改個(gè)人資料。
要關(guān)閉活動(dòng)窗格或選項(xiàng)卡,按 Alt + Shift + W 或輸入終端的標(biāo)準(zhǔn)退出命令(通常是 exit)。
字體大小
可以使用 Ctrl + + 和 Ctrl + - 來調(diào)整活動(dòng)終端的文本大小?;蛘?,按住 Ctrl 并滾動(dòng)鼠標(biāo)滾輪。
滾動(dòng)
使用滾動(dòng)條瀏覽終端輸出?;蛘?,按住 Ctrl 鍵,按光標(biāo)向上、光標(biāo)向下、Page Up或Page Down鍵,使用鍵盤導(dǎo)航。
搜索
按 Ctrl + Shift + F 打開搜索框:

輸入任何術(shù)語,然后使用向上和向下圖標(biāo)搜索終端輸出。單擊 Aa 圖標(biāo)可激活和停用精確大小寫匹配。
復(fù)制粘貼
默認(rèn)情況下,復(fù)制和粘貼分別綁定到 Ctrl + Shift + C 和 Ctrl + Shift + V,盡管 Ctrl + C 和 Ctrl + V 也可以。
注意:請警惕 Ctrl + C 可以終止Linux應(yīng)用程序,因此建議使用Shift。
全局設(shè)置中提供了一個(gè)自動(dòng)選擇時(shí)復(fù)制選項(xiàng),你還可以通過右鍵單擊鼠標(biāo)來粘貼當(dāng)前剪貼板項(xiàng)目。
配置
可從下拉菜單或 Ctrl + ,(逗號)訪問設(shè)置。該配置在單個(gè) settings.json 文件中定義,因此可能會提示你選擇文本編輯器。VS Code是一個(gè)不錯(cuò)的選擇,但是如果你希望在不使用顏色編碼和語法檢查的情況下進(jìn)行編輯,則記事本就可以了。
settings.json 控件:
- global settings 全局設(shè)置,適用于所有配置文件
- profile settings 配置文件設(shè)置,用于定義配置文件
- custom color scheme settings 自定義配色方案設(shè)置,以及keybinding settings 鍵盤綁定設(shè)置
該文件使用以下格式:
- // 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" }
- ]
- }
默認(rèn)值在 defaults.json 中定義。單擊下拉菜單中的 Settings 時(shí),按住 Alt 可以將其打開。
警告:請勿更改默認(rèn)文件!使用它可以查看默認(rèn)設(shè)置,并在必要時(shí)在settings.json中添加或更改設(shè)置。
全局配置
以下全局設(shè)置是最有用的,盡管Windows終端文檔中記錄了更多的全局設(shè)置。
defaultProfile 定義啟動(dòng)Windows Terminal時(shí)用作默認(rèn)配置文件的GUID。
- 將 copyOnSelect 設(shè)置為 true 可將選定的文本自動(dòng)復(fù)制到剪貼板,而無需按 Ctrl + Shift +C。
- 將 copyFormatting 設(shè)置為 false 即可僅復(fù)制純文本而無需任何樣式。 (我希望這是所有應(yīng)用程序的默認(rèn)設(shè)置!)
- 將 initialColumns 和 initialRows 設(shè)置為水平和垂直尺寸的字符數(shù)。
可以將 tabWidthMode 設(shè)置為:
- equal:每個(gè)選項(xiàng)卡的寬度相同(默認(rèn)值)
- titleLength:每個(gè)標(biāo)簽都設(shè)置為其標(biāo)題的寬度,或者
- compact:非活動(dòng)選項(xiàng)卡會縮小到其圖標(biāo)的寬度。
disabledProfileSources 設(shè)置一個(gè)數(shù)組,以防止自動(dòng)生成配置文件。例如:
- "disabledProfileSources": [
- "Windows.Terminal.Wsl",
- "Windows.Terminal.Azure",
- "Windows.Terminal.PowershellCore"
- ],
這將禁用所有生成的配置文件,刪除你要保留的任何一個(gè)。
Profile 個(gè)人資料設(shè)置
通過在 profile、list 數(shù)組中創(chuàng)建一個(gè)對象組來定義新的配置文件。一個(gè)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
- },
每個(gè)配置文件均使用以下設(shè)置進(jìn)行定義:

特定于主題的設(shè)置包括:

最后,在配置文件中添加 ”experimental.retroTerminalEffect”:true,以實(shí)現(xiàn)復(fù)古的CRT效果!…

配色方案設(shè)置
可以將每個(gè)配置文件的 ”colorScheme” 設(shè)置為 defaults.json 中包含的任何配色方案的名稱。例如:
“Campbell”:

“Campbell Powershell”:

“One Half Dark”:

“One Half Light”:

“Tango Dark”:

“Tango Light”:

“Vintage”

創(chuàng)建自己的配色方案
你可以在settings.json的“方案”數(shù)組中定義自己的方案對象。每種顏色均以十六進(jìn)制值定義。例如:
- "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"
- }],
然后,可以通過在配置文件的 ”colorScheme” 設(shè)置中添加其 "name" 來使用該方案。例如:
- "colorScheme": "My New Theme"
鍵盤綁定設(shè)置
settings.json 中的 ”keybindings” 數(shù)組會覆蓋或補(bǔ)充 defaults.json 中設(shè)置的默認(rèn)鍵綁定。每個(gè)鍵綁定都定義為具有 “command” 和 "keys"組合的對象。例如:
- // Ctrl + Shift + F to open the search box
- { "command": "find", "keys": "ctrl+shift+f" },
在某些情況下,“command” 可以是具有一個(gè)或多個(gè)參數(shù)的應(yīng)用程序 "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 +,后跟:

例如,如果你想使用 Ctrl + F 打開搜索框,則可以在 settings.json 中的 ”keybindings” 數(shù)組中添加一行:tab
- "keybindings":
- [ { "command": "find", "keys": "ctrl+f" }
- ]
搜索框也將用 Ctrl + Shift + F 打開,因?yàn)樵撛O(shè)置是在 defaults.json 中定義的——除非你將組合鍵分配給另一個(gè)命令。
命令行選項(xiàng)
可以通過運(yùn)行 wt.exe 從快捷方式或任何Windows或Linux終端啟動(dòng)Windows終端。支持以下選項(xiàng):

你還可以傳遞由分號分隔的命令列表。命令用于定義新的選項(xiàng)卡和窗格以及其他控制參數(shù):

例子
以下示例必須從標(biāo)準(zhǔn)cmd命令行或快捷方式執(zhí)行。
使用 Ubuntu 和 Windows Powershell 選項(xiàng)卡打開Windows終端:
- wt -p "Ubuntu" ; new-tab -p "Windows PowerShell"
在單獨(dú)的窗格中使用 Ubuntu,Windows Powershell 和命令提示符配置文件打開Windows終端:
- wt -p "Ubuntu" ; split-pane -V -p "Windows PowerShell" ; split-pane -H -p "Command Prompt"

Windows Terminal文檔中提供了用于從Linux Shell或Powershell啟動(dòng)Windows Terminal的更多示例。
總結(jié)
希望你喜歡這篇Windows終端的介紹。正如所說,它是WSL2的理想配套。它速度快、可配置、外觀漂亮,并且提供了Windows和Linux開發(fā)的所有優(yōu)點(diǎn)。