Windows Terminalは、UWPではあるが、wt.exeという「アプリ実行エイリアス」を使って、Win32コンソールアプリケーションのように扱うことができる。また、Ver.1.7からは、Windows Terminalのウィンドウを指定して起動コマンドを実行させることが可能になった。このあたりについては過去記事を参考にされたい。
●コマンドラインからウィンドウの制御が可能になったWindows Terminal v1.7
https://ascii.jp/elem/000/004/049/4049105/
とりあえずは最新の安定版(Ver.1.9)、プレビュー版(Ver.1.10)のWindows Terminalのコマンドラインを以下の表にまとめておく。
Windows Terminalをwt.exeで起動するためには、「アプリ実行エイリアス」の設定を確認しておく必要がある。特にプレビュー版と安定版の両方をインストールしている場合、どちらが起動できるのかを確認しておく必要がある。それには、「設定」→「アプリ」→「アプリと機能」→「アプリ実行エイリアス」のリンクをクリックする。
自分をペインに分割する
WSLでbashを使っていると、manコマンドを終了させると、表示がmanコマンドの実行前に戻る。このため直前に何をやっていたのかを見失うことがない。しかし、cmd.exeのhelp.exeコマンドやPowerShellのget-helpにはこうした機能がなく、ヘルプを見たのはいいが、さて何をやっていたんだっけ? となることがある。
Windows Terminalの起動オプションである「-w」「--window」を使えば、特定のウィンドウに対して、起動オプションを実行させることができる。このとき、「0」は自分自身を示す。たとえば、cmd.exeを実行しているなら以下のコマンドでタブの右側をペインに分割して、help.exeコマンドを実行する。なお、「identifyWindows」アクションをキーに割り当てると、それぞれのウィンドウに番号と名前を表示させられるようになっている。
wt.exe -w 0 split-pane -p "コマンド プロンプト" cmd.exe /c "help.exe & set /P x= & exit 0"
上のコマンドは、ヘルプコマンドの終了後にEnterキーを待った後にペインを閉じるもの。help.exeに引数として内部コマンドなどを指定すれば、該当のヘルプを見ることができる。後半の「& set /P x= & exit 0」の部分はいつも同じでかまわない。
同じことは、Windows PowerShellの中でもできる。
wt.exe -w 0 split-pane -p "Windows PowerShell" powershell.exe -command {get-help $c; read-host}
このときのペイン分割は、「auto」で、Windows Terminalウィンドウの縦横のうち、長いほうを1/2に分割する。その他の分割方法、たとえば約1/3のサイズで上下分割したければ、
wt.exe -w 0 split-pane -H --size 0.3 -p "コマンド プロンプト" cmd.exe /c "help.exe & set /P x= & exit 0"
などとする。
別ウィンドウに表示する
別ウィンドウを開いてそこにヘルプを表示したければ、-wオプションで適当なウィンドウIDを指定する。
このときには新規にタブを開くので「split-pane」は含めない。
wt.exe -w HELP -p "コマンド プロンプト" cmd.exe /c "help.exe & set /P x= & exit 0"
これはPowerShellでもほぼ同じだ。
wt.exe -w HELP -p "Windows PowerShell" powershell.exe -command {get-help ; read-host }
この連載の記事
-
第458回
PC
Windows上でhostsファイルを活用する -
第457回
PC
IPv6アドレスは先頭を見ればどんな種類かわかる -
第456回
PC
あらためてIPv6基本のキ -
第455回
PC
Windowsで現在どのネットワークアダプタがインターネット接続に使われているかを調べる方法 -
第454回
PC
Windows 11 24H2では「デバイスの暗号化」の条件が変わり、より多くのPCでドライブが暗号化される -
第453回
PC
Windows 11 24H2の配布開始後もすぐにはやってこない Windows UpdateとSafeguard Holds -
第452回
PC
Windows 11 Ver.24H2が登場 Copilot+ PCとそうでないPCで実質Windowsが2つに分かれる -
第451回
PC
新しいWindowsサンドボックスではコマンドラインからの制御が可能に -
第450回
PC
ユニコードで文字数を数える方法 -
第449回
PC
WSLはプレビュー版でGUIでの設定が加わった! リリース2.3.xの新機能を見る -
第448回
PC
PowerShellで面倒なオブジェクトはPSCustomObjectに変換するのが早道 - この連載の一覧へ