このページの本文へ

前へ 1 2 次へ

Windows Info 第268回

コマンドラインからウィンドウの制御が可能になったWindows Terminal v1.7

2021年03月28日 10時00分更新

文● 塩田紳二 編集● ASCII

  • この記事をはてなブックマークに追加
  • 本文印刷

プレビュー版はv1.7まで進んだWindows Terminal

 Windows Terminalは、3月に入り、通常版のv1.6、プレビュー版ではv1.7の配付が始まった。v1.6のプレビュー版では、GUI設定ページが搭載されたが、まだプレビューのプレビューという感じで、キー割り当てなどをしないとGUI設定ページを出せなかった。

 しかし、プレビュー版v1.7では、従来settings.jsonを開くキー割り当てである「Ctrl+,」でGUI設定ページが開くようになり、どうやら“プレビューのプレビュー”からただの“プレビュー”になったようである。これにともない、キー割り当てを表示するタブが追加された。ただし、キー割り当ては、まだsettings.jsonでする必要があるようだ。

Windows Terminal Preview v1.6で加わったGUI設定ページは、キー割り当ての表示をする「操作」タブが増えている

 しかし、v1.7には、それ以外にもいくつもの新機能が搭載された。ここでは、これらをまとめて解説する。なお、v1.6までの機能などについては、本連載の過去記事などをご覧いただきたい。

●正式版が登場したWindows Terminalをカスタマイズする
●Windows Terminalのカスタマイズを研究【キーボード編】
●プレビュー版で開発が進められているWindows Terminal
●Preview版でv1.5まで進化したWindows Terminalの新機能を確認
●v1.6まで進化し、GUIでの設定ページも用意されたWindows Terminal

 さて、v1.7に搭載された新機能だが、主なものとしては、以下が挙げられる。

・Windows Terminalウィンドウの制御
・settings.jsonのJSONフラグメントのサポート
・キー割り当てが可能な新規Action
・そのほか

 「Windows Terminalウィンドウの制御」とは、コマンドラインから1回表示させたWindows Terminalのウィンドウをコマンドラインオプションで指定する方法だ。v1.6までは、wt.exeで新規ウィンドウを開くことはできたし、そのときにコマンドラインオプションでタブを追加する、ペインを分割するといったことは可能だったが、ウィンドウが開いたあとは、そのウィンドウで操作しない限り、他のWindows Terminalウィンドウからは制御ができなかった。

 新規Actionには、再検索機能や新規ウィンドウ、ペインの読みとり専用モード設定などがある。一部のActionには、標準でキーが割り当てられているが、そうでないものもあり、ユーザーがsettings.jsonファイルでキー割り当てをする必要がある。

コマンドラインからウィンドウの制御が可能に

 プレビュー版v1.7最大の新機能は、コマンドラインからウィンドウを指定して制御できるようになったことだ。つまり、一度表示させたWindows Terminalのウィンドウに対して、ペインの分割や新規タブ追加など、コマンドラインから制御できる。これにより、たとえば、アプリケーションから別のターミナルウィンドウを表示させる、表示させたWindows Terminalのウィンドウをペインに分割する、別のタブを選択するといったことが可能になる。

 この際に追加されたのが「--window」オプションだ。短縮形式で「-w」という指定も可能。このオプションに続けてウィンドウ番号を指定することで、既存のウィンドウが制御できるようになる。また、この拡張に対応して、別ウィンドウを開くためのActionやwt.exeのみでオプションを付けずに起動した場合の挙動の設定といった新機能も搭載された(後述)。

 ウィンドウの制御は、「--window 整数」として整数でウィンドウ番号を指定する。ウィンドウ番号が初めて使われる場合には新規ウィンドウとなる。以後は、同じウィンドウ番号が指定されたwt.exeコマンドのオプション指定は、すべて同じウィンドウに対するものとなる。

 なお、ウィンドウ番号は、コマンドを発行する側が「適当」なものを指定する必要がある。他のアプリケーションと衝突したくなければ、ユニークな整数値を生成すればいいだろうし、個人的に使うなら、自分で適当な番号「12345」などを使えばよい。ただし、ウィンドウ番号の0は自分自身を、-1は常に新規ウィンドウを意味する。

 以下の表は、プレビュー版v1.7で利用可能な起動オプションの一覧である。--windowオプションとこれらのサブコマンドを組み合わせることで、既存のウィンドウを制御できる。大まかには、「新規タブ」「ペイン分割」「タブ選択」のどれかが可能だ。

 ウィンドウ番号は、wt.exeを起動する側が管理する。PowerShellからだと、

wt.exe --window 1234 new-tab Powershell.exe -command { help get-member }

のようにする。ウィンドウ番号1234は、筆者が適当に決めた数字であり、数字自体には意味はない。これを1回実行すると、Windows Terminalのウィンドウが新規に開き、PowerShellで「help get-member」というヘルプコマンドが実行される。もう一度上記のコマンドを実行すると、同じウィンドウにタブが追加されて、同じようにヘルプコマンドが実行される。

 2回目は、最後の部分を「{ help get-chileitem }」などと他のコマンドのヘルプにしてもよい。このように同一のウィンドウ番号を--windowオプションのパラメーターとして指定することで、同一のウィンドウに対して、起動オプションによる制御を行うことができる。たとえば、2回目に

wt.exe --window 1234 split-pane Powershell.exe -command { help get-childitem }

とすれば、最初のウィンドウのタブがペイン分割されて、もう一方では「help get-childitem」が実行される。Windows Terminalを制御したいプログラムでは、このように同一のウィンドウ番号を使って制御できる。

 WSL内では、ちょっとした注意が必要だ。というのは、wt.exeは、UWPアプリケーション(Windows TerminalはUWPアプリケーションである)の「アプリ実行エイリアス」であるため、wt.exeという実行ファイルはどこにも存在しない。このため、Linux内からは、wt.exeをWin32相互運用性で起動することはできない。

 ではどうすればいいのかというと、「cmd.exeをWSLのWin32相互運用性で起動し、/Cオプションを使って「start wt.exe」を実行させる。これにより、wt.exeはcmd.exeのコマンドとして起動される。具体的には、以下のようにだ。

cmd.exe /c "start wt.exe --window 12345 new-tab wsl.exe -- man bash"

 これにより、別のWindows Terminalウィンドウが開き、その中でWSLが起動し「man bash」コマンドが実行される。もちろん、「man bash」の部分を書き換えることで別のコマンドや別のmanページを見ることもできる。単に別のWindows Terminalを起動してコマンドを打ったのと同じだが、上記のコマンドを含むスクリプトなどを作っておくと、キー操作だけで別ウィンドウにmanページを表示できるようになる。

 これは、Windows Terminal固有の話のようだが、筆者は同じようなことをするスクリプトを1980年台の終わり頃にUNIXワークステーションで作ったことがある。UNIXワークステーションでは、GUIが利用できるようになり、xtermと呼ばれる端末ソフトを複数同時に表示できるようになったときの話だ。

 複数のコンソールがタブで1つのウィンドウにまとまっているというのもメリットではあるが、別のウィンドウに表示されている情報を見ながら、コマンドを入力したいこともある。もちろんマルチウィンドウであれば、これは可能だが、マウスを使わずにキー操作だけでできるというのはメリットである。

 UNIXでは、コマンドラインが基本だったので、xtermは多数の起動オプションを持ち、細かく制御が可能だった。しかし、Windowsは最初からGUIなので、実はコマンドラインに非力な部分がある。Windows Terminalは、この--windowオプションで、ようやく当時のGUI環境の中の端末環境に追いついたともいえる。

前へ 1 2 次へ

カテゴリートップへ

この連載の記事
1
【整備済み品】中古 ノートパソコン NEC VersaPro VKT16/15.6型・第8世代Core i5-8250U(最大動作3.4GHz)/快適メモリ8GB/ 高速SSD 256GB/Win11 Pro/MS Office 2019付属/テンキー付, Webカメラ, USB3.0, HDMI, VGA, 有線LAN, WIFI内蔵, Bluetooth/ACアダプター付属/180日間保証
【整備済み品】中古 ノートパソコン NEC VersaPro VKT16/15.6型・第8世代Core i5-8250U(最大動作3.4GHz)/快適メモリ8GB/ 高速SSD 256GB/Win11 Pro/MS Office 2019付属/テンキー付, Webカメラ, USB3.0, HDMI, VGA, 有線LAN, WIFI内蔵, Bluetooth/ACアダプター付属/180日間保証
¥26,880
2
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
¥36,979
3
HP ノートパソコン 15-fd 15.6インチ インテル Core Ultra 5 125H メモリ16GB SSD512GB Windows 11 Microsoft Office 2024搭載 WPS Office搭載 カメラシャッター 指紋認証 薄型 Copilotキー搭載 ナチュラルシルバー (BJ0M7PA-AAAF)
HP ノートパソコン 15-fd 15.6インチ インテル Core Ultra 5 125H メモリ16GB SSD512GB Windows 11 Microsoft Office 2024搭載 WPS Office搭載 カメラシャッター 指紋認証 薄型 Copilotキー搭載 ナチュラルシルバー (BJ0M7PA-AAAF)
¥134,377
4
Lenovo Chromebook クロームブック IdeaPad Flex 3i Gen8 12.2インチ インテル® プロセッサー N100搭載 メモリ4GB eMMC 64GB バッテリー駆動12.0時間 重量1.25kg アビスブルー 82XH001KJP
Lenovo Chromebook クロームブック IdeaPad Flex 3i Gen8 12.2インチ インテル® プロセッサー N100搭載 メモリ4GB eMMC 64GB バッテリー駆動12.0時間 重量1.25kg アビスブルー 82XH001KJP
¥39,800
5
Apple 2025 MacBook Pro 10 コアCPU、10 コアGPU のM5 チップ搭載ノートパソコン:Apple Intelligence のために設計、14.2 インチLiquid Retina XDR ディスプレイ、24GB ユニファイドメモリ、1TBのSSD ストレージ - スペースブラック
Apple 2025 MacBook Pro 10 コアCPU、10 コアGPU のM5 チップ搭載ノートパソコン:Apple Intelligence のために設計、14.2 インチLiquid Retina XDR ディスプレイ、24GB ユニファイドメモリ、1TBのSSD ストレージ - スペースブラック
¥296,323

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

ASCII倶楽部

注目ニュース

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ
1
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
¥1,880
2
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
¥1,890
3
【Amazon.co.jp限定】バッファロー microSD 32GB 100MB/s UHS-1 U1 microSDHC【 Nintendo Switch 対応 】V10 A1 IPX7 Full HD RMSD-032U11HA/N
【Amazon.co.jp限定】バッファロー microSD 32GB 100MB/s UHS-1 U1 microSDHC【 Nintendo Switch 対応 】V10 A1 IPX7 Full HD RMSD-032U11HA/N
¥980
4
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
¥740
5
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
¥990
6
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
¥5,280
7
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
¥980
8
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
¥5,555
9
バッファロー SDカード 128GB 100MB/s UHS-1 スピードクラス1 VideoSpeedClass10 IPX7 Full HD データ復旧サービス対応 RSDC-128U11HA/N
バッファロー SDカード 128GB 100MB/s UHS-1 スピードクラス1 VideoSpeedClass10 IPX7 Full HD データ復旧サービス対応 RSDC-128U11HA/N
¥1,980
10
バッファロー USBメモリ 32GB USB3.2(Gen1)/3.1(Gen 1)/3.0/2.0 充実サポート RUF3-K32GA-BK/N
バッファロー USBメモリ 32GB USB3.2(Gen1)/3.1(Gen 1)/3.0/2.0 充実サポート RUF3-K32GA-BK/N
¥880

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン