使用 Windows 終端機的命令列引數
您可以使用 wt.exe
從命令列開啟新的 Windows 終端機執行個體。 您也可以改為使用執行別名 wt
。
注意
如果您是透過 GitHub 上的原始程式碼建置 Windows 終端機,則可以使用 wtd.exe
或 wtd
來開啟該組建。
命令列語法
wt
命令列可接受兩種類型的值:選項和命令。 選項是可以控制整個 wt
命令列行為的旗標和其他參數所構成的清單。 命令可提供所應實作的單一動作或動作清單 (後者以分號分隔)。 如果未指定任何命令,則預設會將命令假設為 new-tab
。
wt [options] [command ; ]
注意
wt.exe
命令的行為可能會受到 windowingBehavior
屬性的影響。 此設定可調整預設為開啟新視窗或開啟新索引標籤。
若要顯示列出了可用命令列引數的說明訊息,請輸入:wt -h
、wt --help
、wt -?
或 wt /?
。
選項和命令
以下是 wt
命令列所支援的完整命令和選項清單。
選項 | 描述 |
---|---|
--help, -h, -?, /? |
顯示說明訊息。 |
--maximized, -M |
啟動最大化的終端機。 |
--fullscreen, -F |
以全螢幕形式啟動終端機。 |
--focus, -f |
以焦點模式啟動終端機。 可與 maximized 結合。 |
--pos x,y |
在指定位置啟動終端機。 可以省略 x 或 y ,以使用設定中的預設值。 |
--size c,r |
啟動具有指定資料行數 (c ) 和資料列數 (r ) 的終端機。 |
--window, -w window-id |
在特定視窗中執行指定命令。 |
--window
參數可用於將命令傳送至現有終端機視窗。
window-id
可能是視窗的整數識別碼或視窗名稱。 同時也接受下列保留值:
new
或-1
:一律在新視窗中執行此命令last
或0
:一律在最近使用的視窗中執行此命令
如果任何視窗中都沒有指定的 window-id
,則會使用該識別碼/名稱建立新視窗。
例如,執行 wt -w _quake
會開啟新的「地震視窗」。 再次執行該命令,則會在現有地震視窗中開啟新索引標籤。
新索引標籤命令
用於建立新索引標籤。另請參閱 newTab
動作。
Command | 參數 | 描述 | 值 |
---|---|---|---|
new-tab , nt |
--profile, -p profile-name |
根據指派的設定檔名稱,建立新索引標籤。 | 設定檔名稱 |
new-tab , nt |
--startingDirectory, -d starting-directory |
根據指派的起始目錄路徑,建立新索引標籤。 | 目錄路徑 |
new-tab , nt |
commandline |
根據指派的命令列,建立新索引標籤。 | 具有選擇性命令的可執行檔 |
new-tab , nt |
--title |
建立新索引標籤並指派標題。 | 作為索引標籤標題的文字 |
new-tab , nt |
--tabColor |
建立新索引標籤,並指派索引標籤色彩。 | 十六進位色彩為 #RGB 或 #RRGGBB |
new-tab , nt |
--suppressApplicationTitle |
覆寫設定檔的 suppressApplicationTitle 設定,並將其設定為 true |
|
new-tab , nt |
--useApplicationTitle |
覆寫設定檔的 suppressApplicationTitle 設定,並將其設定為 false |
|
new-tab , nt |
--colorScheme scheme-name |
覆寫設定檔的 colorScheme 設定,並將其設定成名稱為 scheme-name 設定中的配置 |
設定中的色彩配置名稱 |
提示
如果您在 Windows 終端機中變更索引標籤的標題,並想要保存該標題,則必須將其設定為 true
以啟用 suppressApplicationTitle 選項。
Split-pane 命令
用於建立新的分割窗格。 另請參閱 splitPane
動作。
Command | 參數 | 描述 | 值 |
---|---|---|---|
split-pane , sp |
-H, --horizontal , -V, --vertical |
建立新的水平或垂直分割視窗窗格。 | N/A。 無須指派其他值。 |
split-pane , sp |
--profile, -p profile-name |
根據指派的命令列設定檔,建立新的分割視窗窗格。 如果未指派此參數,則會使用預設設定檔。 | 設定檔名稱 |
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 |
建立新的分割視窗窗格,該窗格為目前窗格的複本。 | N/A。 無須指派其他值。 |
split-pane , sp |
--suppressApplicationTitle |
覆寫設定檔的 suppressApplicationTitle 設定,並將其設定為 true |
|
split-pane , sp |
--useApplicationTitle |
覆寫設定檔的 suppressApplicationTitle 設定,並將其設定為 false |
|
split-pane , sp |
--colorScheme scheme-name |
覆寫設定檔的 colorScheme 設定,並將其設定成名稱為 scheme-name 設定中的配置 |
設定中的色彩配置名稱 |
Focus-tab 命令
用於聚焦視窗中的特定索引標籤。 另請參閱 switchToTab
動作。
Command | 參數 | 描述 | 值 |
---|---|---|---|
focus-tab , ft |
--target, -t tab-index |
根據索引標籤的索引編號,聚焦於特定索引標籤。 | 整數形式的索引標籤索引 |
Move-focus 命令
用於在視窗中移動焦點。 另請參閱 moveFocus
動作。
Command | 參數 | 描述 | 值 |
---|---|---|---|
move-focus , mf |
<direction> |
在窗格之間移動焦點。 | 如需接受的 direction 值詳細資訊,請參閱下文 |
接受的 direction
值
up
、down
、left
或right
將焦點移至指定方向。first
將焦點移至樹狀結構中的第一個分葉窗格。previous
將焦點移至目前窗格之前最近使用的窗格。nextInOrder
、previousInOrder
依照建立順序,將焦點移至下一個或上一個窗格。
Move-pane 命令
用於在視窗中移動窗格。 另請參閱 movePane
動作。
Command | 參數 | 描述 | 值 |
---|---|---|---|
move-pane , mp |
--tab,-t <index> |
將使用中窗格移至視窗中的指定索引標籤 | 索引標籤以零為基底編製索引,可將窗格移至其中。 |
Swap-pane 命令
用於交換視窗中兩個窗格的位置。 另請參閱 swapPane
動作。
Command | 參數 | 描述 | 值 |
---|---|---|---|
swap-pane |
<direction> |
將窗格與指定方向的窗格交換 | 如需接受的 direction 值詳細資訊,請參閱下文 |
接受的 direction
值 (這些值與 move-focus
子命令相同)
up
、down
、left
或right
:將使用中窗格與指定方向的窗格交換。first
:將使用中窗格與樹狀結構中的第一個分葉窗格交換。previous
:將使用中窗格與目前窗格之前最近使用的窗格交換。nextInOrder
、previousInOrder
:依照建立順序,將使用中窗格與下一個或上一個窗格交換。
命令列引數範例
命令可能會隨您所使用的命令列而略有不同。
將引數傳遞至預設殼層
若要啟動 Windows 終端機執行個體並讓其執行命令,請先呼叫 wt.exe
,接著呼叫您的命令。
以下範例說明如何呼叫 Windows 終端機傳遞 ping 命令引數,藉此回應 IP 位址:
wt ping learn.microsoft.com
以下範例說明如何使用 PowerShell 命令列呼叫 Windows 終端機開啟新索引標籤,確認呼叫 Start-Service 命令,以及使用 Windows 命令提示字元開啟另一個新索引標籤並開啟 /k
目錄:
wt new-tab PowerShell -c Start-Service ; new-tab cmd /k dir
以特定視窗為目標
以下是如何使用 --window,-w
選項,將特定視窗作為目標的範例。
// Open a new tab with the default profile in the current window
wt -w 0 nt
// Open a new tab in a new window with the default profile
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
開啟新的設定檔執行個體
若要開啟新的終端機執行個體 (在本案例中,命令會開啟名為 "Ubuntu-18.04" 的設定檔),請輸入:
wt -p "Ubuntu-18.04"
-p
旗標可用來指定應該開啟的 Windows 終端機設定檔。 請以所安裝的任何終端機設定檔名稱取代 "Ubuntu-18.04"。 這一律會開啟新的視窗。 Windows 終端機尚未能夠在現有執行個體中開啟新的索引標籤或窗格。
將目標定為某個目錄
若要指定應該作為主控台起始目錄的資料夾 (在本案例中為 d:\ 目錄),請輸入:
wt -d d:\
多個索引標籤
若要開啟有多個索引標籤的新終端機執行個體,請輸入:
wt ; ;
若要開啟有多個索引標籤的新終端機執行個體 (在本案例中為命令提示字元設定檔和 PowerShell 設定檔),請輸入:
wt -p "Command Prompt" ; new-tab -p "Windows PowerShell"
多個窗格
若要開啟新的終端機執行個體,使其擁有一個索引標籤,內含三個分別執行命令提示字元設定檔、PowerShell 設定檔和您的預設設定檔 (執行 WSL 命令列) 的窗格,請輸入:
wt -p "Command Prompt" ; split-pane -p "Windows PowerShell" ; split-pane -H wsl.exe
-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
窗格標題
若要為每個終端機窗格開啟具有自訂標題的新終端機執行個體,請使用 --title
引數。 若要在開啟多個索引標籤時,設定每個窗格的標題,請輸入:
wt --title tabname1 ; new-tab -p "Ubuntu-18.04" --title tabname2
相同索引標籤中的窗格可以有不同標題,並根據哪個窗格具有焦點,反映在索引標籤標題上。 若要命名獨立窗格,您可以在分割窗格後輸入下列命令設定標題:
wt --title pane1 ; split-pane -p "Command Prompt" --title pane2
使用應用程式標題
若要開啟新的終端機執行個體,允許其中的應用程式透過傳送標題變更訊息來設定索引標籤標題,請使用 --useApplicationTitle
旗標。 若要隱藏這些訊息,請使用 --suppressApplicationTitle
旗標。 如果未提供這些旗標,行為就會繼承自設定檔的設定。 若要開啟標題為 tabname
且不會遭應用程式覆寫的索引標籤,請輸入:
wt --title tabname --suppressApplicationTitle
索引標籤色彩
若要以自訂索引標籤色彩開啟新的終端機執行個體,請使用 --tabColor
引數。 此引數會覆寫設定檔中定義的值,但也可以使用索引標籤色彩選擇器加以覆寫。 在下列範例中,我們會使用兩種不同色彩的索引標籤建立新的終端機:
wt --tabColor #009999 ; new-tab --tabColor #f59218
針對索引標籤設定 --tabColor
時,其會與此索引標籤的第一個窗格相關聯。因此,在具有多個窗格的索引標籤中,只有聚焦於第一個窗格時,才會套用色彩。 若要設定其他窗格的索引標籤色彩,您還須將 --tabColor
參數新增至 split-pane
子命令。 在下列範例中,我們會建立具有兩個窗格的索引標籤,並為每個窗格指定索引標籤色彩:
wt new-tab --tabColor '#009999' `; split-pane --tabColor '#f59218'
色彩配置
若要開啟具有指定色彩配置 (而非設定檔中設定的 colorScheme
) 的新終端機執行個體,請使用 --colorScheme
引數。 這個引數會覆寫設定檔中定義的值。
wt --colorScheme Vintage ; split-pane --colorScheme "Tango Light"
索引標籤焦點
若要開啟新的終端機執行個體,並使其具有焦點所在的特定索引標籤,請使用 -t
旗標 (或 --target
) 以及索引標籤索引編號。 若要在第一個索引標籤中開啟預設設定檔,並在第二個索引標籤 (-t 1
) 中開啟焦點所在的 "Ubuntu-18.04" 設定檔,請輸入:
wt ; new-tab -p "Ubuntu-18.04" ; focus-tab -t 1
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
。