Windows ターミナルに対するコマンド ライン引数を使用する

wt.exe を使用すると、コマンド ラインから Windows ターミナルの新しいインスタンスを開くことができます。 代わりに、実行エイリアス wt を使用することもできます。

Note

GitHub のソース コードから Windows ターミナルをビルドした場合、wtd.exe または wtd を使用してそのビルドを開くことができます。

Windows Terminal command line argument for split panes

コマンド ラインの構文

wt コマンド ラインでは、オプションコマンド の 2 種類の値が受け付けられます。 オプション は、wt コマンド ライン全体の動作を制御できるフラグとその他のパラメーターのリストです。 コマンド では、実装する必要がある 1 つのアクション、またはセミコロンで区切られたアクションのリストを提供します。 コマンドを指定しないと、コマンドは既定で new-tab と見なされます。

wt [options] [command ; ]

注意

wt.exe コマンドの動作は、windowingBehavior プロパティの影響を受けることがあります。 この設定は、新しいウィンドウを開くか新しいタブを開くという既定値に調整することができます。

使用可能なコマンド ライン引数を一覧表示するヘルプ メッセージを表示するには、wt -hwt --helpwt -?、または 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 には、ウィンドウの整数 ID またはウィンドウの名前のいずれかを指定できます。 また、次の予約済みの値も受け取ります。

  • new または -1: 常に新しいウィンドウでこのコマンドを実行します
  • last または 0: 常に最後に使用したウィンドウでこのコマンドを実行します

指定された window-id を持つウィンドウが存在しない場合は、その ID/名前を使用して新しいウィンドウが作成されます。

たとえば、wt -w _quake を実行すると、新しい "Quake ウィンドウ" が開かれます。 そのコマンドをもう一度実行すると、既存の Quake ウィンドウに新しいタブが開きます。

新しいタブ コマンド

新しいタブを作成するために使用します。newTab アクションも参照してください。

コマンド パラメーター 説明
new-tabnt --profile, -p profile-name 割り当てられたプロファイル名に基づいて新しいタブを作成します。 [プロファイル名]
new-tabnt --startingDirectory, -d starting-directory 割り当てられた開始ディレクトリ パスに基づいて新しいタブを作成します。 ディレクトリ パス
new-tabnt commandline 割り当てられたコマンド ラインに基づいて新しいタブを作成します。 オプションのコマンドを使用した実行可能ファイル
new-tabnt --title 割り当てられたタイトルを使用して新しいタブを作成します。 タブ タイトルとして使用するテキスト
new-tabnt --tabColor 割り当てられたタブの色で新しいタブを作成します。 16 進数の色 (#RGB または #RRGGBB)
new-tabnt --suppressApplicationTitle プロファイルの suppressApplicationTilte 設定をオーバーライドし、true に設定します
new-tabnt --useApplicationTitle プロファイルの suppressApplicationTilte 設定をオーバーライドし、false に設定します
new-tabnt --colorScheme scheme-name プロファイルの colorScheme 設定をオーバーライドし、scheme-name という名前の設定からスキームに設定します 設定の配色の名前

ヒント

Windows ターミナルのタブのタイトルを変更し、そのタイトルを保持する場合は、suppressApplicationTitle オプションを true に設定して有効にする必要があります。

split-pane コマンド

新しい分割ペインを作成するために使用します。 splitPane アクションも参照してください。

コマンド パラメーター 説明
split-panesp -H, --horizontal-V, --vertical 新しい分割ウィンドウ ペインを水平方向または垂直方向に作成します。 該当なし。 割り当てる追加の値はありません。
split-panesp --profile, -p profile-name 割り当てられたコマンド ライン プロファイルに基づいて、新しい分割ウィンドウ ペインを作成します。 このパラメーターが割り当てられていない場合は、既定のプロファイルが使用されます。 [プロファイル名]
split-panesp --startingDirectory, -d starting-directory 割り当てられた開始ディレクトリ パスに基づいて、新しい分割ウィンドウ ペインを作成します。 このパラメーターが割り当てられていない場合は、既定の開始ディレクトリが使用されます。 ディレクトリ パス
split-panesp --title 割り当てられたタイトルを使用して新しい分割ウィンドウ ペインを作成します。 タブ タイトルとして使用するテキスト
split-panesp --tabColor 割り当てられたタブの色を使用して新しい分割ウィンドウ ペインを作成します。 16 進数の色 (#RGB または #RRGGBB)
split-panesp --size, -s size 割り当てられたサイズで新しい分割ウィンドウ ペインを作成します。 小数点で表される、使用する親ペインの部分を指定する浮動小数です。 たとえば、.4 は親ペインの 40% を表します。
split-panesp commandline 割り当てられたコマンド ラインに基づいて、新しい分割ウィンドウ ペインを作成します。 オプションのコマンドを使用した実行可能ファイル
split-panesp --duplicate, -D 現在のペインの複製である新しい分割ウィンドウ ペインを作成します。 該当なし。 割り当てる追加の値はありません。
split-panesp --suppressApplicationTitle プロファイルの suppressApplicationTilte 設定をオーバーライドし、true に設定します
split-panesp --useApplicationTitle プロファイルの suppressApplicationTilte 設定をオーバーライドし、false に設定します
split-panesp --colorScheme scheme-name プロファイルの colorScheme 設定をオーバーライドし、scheme-name という名前の設定からスキームに設定します 設定の配色の名前

focus-tab コマンド

ウィンドウ内で特定のタブにフォーカスを合わせるために使用されます。 switchToTab アクションも参照してください。

コマンド パラメーター 説明
focus-tabft --target, -t tab-index タブのインデックス番号に応じて、特定のタブにフォーカスを設定します。 整数としてのタブ インデックス

move-focus コマンド

ウィンドウ内でフォーカスを移動するために使用されます。 moveFocus アクションも参照してください。

コマンド パラメーター 説明
move-focusmf <direction> ペイン間でフォーカスを移動します。 使用可能な direction 値については、下を参照してください。

使用可能な direction

  • updownleft または right の特定の方向にフォーカスが移動します。
  • first では、ツリーの最初のリーフ ペインにフォーカスが移動します。
  • previous では、現在のペインの前の、最後に使用したペインにフォーカスが移動します。
  • nextInOrderpreviousInOrder では、次または前のペインに作成順にフォーカスが移動します。

move-pane コマンド

ウィンドウ内でペインを移動するために使用されます。 movePane アクションも参照してください。

コマンド パラメーター 説明
move-panemp --tab,-t <index> アクティブなペインをウィンドウ内の特定のタブに移動する ペインの移動先のタブのインデックスが 0 のインデックス

swap-pane コマンド

ウィンドウ内の 2 つのペインの位置を入れ替えるために使用されます。 swapPane アクションも参照してください。

コマンド パラメーター 説明
swap-pane <direction> 指定した方向のペインとペインを入れ替えます 使用可能な direction 値については、下を参照してください。

使用可能な direction 値 (これらは move-focus サブ コマンドと同じ値です)

  • updownleft または right: アクティブなペインを、指定された方向のものと入れ替えます。
  • first: アクティブなペインをツリーの最初のリーフ ペインと入れ替えます。
  • previous: アクティブなペインを、現在のペインの前の、最後に使用したペインと入れ替えます。
  • nextInOrderpreviousInOrder: アクティブなペインを、次または前のペインと作成順に入れ替えます。

コマンド ライン引数の例

コマンドは、使用しているコマンド ラインによって多少異なる場合があります。

既定のシェルに引数を渡す

Windows ターミナルのインスタンスを起動してコマンドを実行するには、wt.exe の後にコマンドを続けて呼び出します。

次の例では、Windows ターミナルを呼び出して ping コマンド引数を渡し、IP アドレスをエコーしています。

wt ping learn.microsoft.com

次の例では、Windows ターミナルを呼び出して、PowerShell コマンド ラインを使用して新しいタブを開き、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 コマンド ラインを実行する既定のプロファイルが実行されている 3 つのペインが含まれる 1 つのタブを持つ新しいターミナル インスタンスを開くには、次のように入力します。

wt -p "Command Prompt" ; split-pane -p "Windows PowerShell" ; split-pane -H wsl.exe

-H フラグ (または --horizontal) は、ペインを水平方向に分割するように指定します。 -V フラグ (または --vertical) は、ペインを垂直方向に分割するように指定します。

複数のタブとペイン

new-tab コマンドと split-pane コマンドをシーケンス処理して、複数のタブを取得し、それぞれに分割ペインを配置することができます。 それぞれにコマンド プロンプトと WSL コマンドラインを実行する 2 つのペインがある 2 つのタブを持つ新しいターミナル インスタンスを、各タブで異なるディレクトリで開くには、次のように入力します。

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 引数を使用します。 この引数は、プロファイルで定義されている値をオーバーライドしますが、タブ カラー ピッカーを使用してもオーバーライドできます。 次の例では、異なる色の 2 つのタブを持つ新しいターミナルが作成されます。

wt --tabColor #009999 ; new-tab --tabColor #f59218

タブに対して --tabColor が設定されている場合は、これはこのタブの最初のペインに関連付けられます。したがって、複数のペインを含むタブでは、最初のペインにフォーカスがある場合にのみ、色が適用されます。 追加のペインのタブ色を設定するには、--tabColor パラメーターを split-pane サブコマンドにも追加する必要があります。 次の例では、2 つのペインを含むタブが、各ペインに対して指定されたタブの色で作成されています。

wt new-tab --tabColor '#009999' `; split-pane --tabColor '#f59218'

配色

(プロファイルで設定されている colorScheme の代わりに) 特定の配色を使用して新しいターミナル インスタンスを開くには、--colorScheme 引数を使用します。 この引数は、プロファイルで定義されている値をオーバーライドします。

wt --colorScheme Vintage ; split-pane --colorScheme "Tango Light"

タブ フォーカス

特定のタブにフォーカスを設定して新しいターミナル インスタンスを開くには、-t フラグ (または --target) とタブ インデックス番号を使用します。 1 番目のタブで既定のプロファイルを開き、2 番目のタブ (-t 1) で "Ubuntu-18.04" プロファイルを開いてフォーカスを設定するには、次のように入力します。

wt ; new-tab -p "Ubuntu-18.04" ; focus-tab -t 1

PowerShell からの複数のコマンドの例

Windows ターミナルでは、wt コマンド ラインのコマンドを区切るための区切り記号として、セミコロン文字 ; を使用します。 残念ながら、PowerShell では、コマンドの区切り記号としても ; を使用します。 これを回避するには、次の方法を使用して、PowerShell から複数の wt コマンドを実行できます。 以下のすべての例では、3 つのペインから成る新しいターミナル ウィンドウが作成されます。コマンド プロンプトを実行するペイン、PowerShell のペイン、WSL を実行するペインです。

次の例では、start を使用しないでコマンド ラインを実行しています。 代わりに、コマンド ラインをエスケープする方法が他に 2 つあります。

  • 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 は常に、Windows ストア アプリケーション (Windows ターミナルなど) が終了するまで待ってからプロンプトに戻ります。 これは、すぐにプロンプトに戻るコマンド プロンプトの動作とは異なることに注意してください。

Windows ターミナル実行可能ファイルを PATH に追加する

Windows ターミナル実行可能ファイル (wt.exe) を PATH に追加するには、Windows 設定の [Manage app execution aliases] (アプリ実行エイリアスの管理) ページでその "アプリ実行エイリアス" を有効にします。 Windows ターミナルのエイリアスは既定で有効になっていますが、アクセスに問題がある場合は確認することをお勧めします。

アプリ実行エイリアスへのアクセスの問題が解決しない場合は、PATH に %LOCALAPPDATA%\Microsoft\WindowsApps が含まれているかどうかを確認する必要があります。 C:\Program Files\WindowsApps に変更を加えないでください。

Windows Settings for App Execution Aliases