このページの本文へ

前へ 1 2 次へ

Windows Info 第287回

Windows Terminalのコマンドラインを極める

2021年08月08日 10時00分更新

文● 塩田紳二 編集● ASCII

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

スクリプトから実行する

 毎回、こうしたコマンドを打つのも大変なので、任意のコマンドのヘルプを表示するバッチファイルやPowerShellスクリプトを作っていく。バッチファイルの引数として調べたいコマンドを指定すれば、該当のヘルプを表示できる。別ウィンドウに表示するならタブにタイトルを付けておくとすぐに参照できるようになる。cmd.exeから実行するバッチファイルの場合は以下のようになる。

@wt.exe -w 0 split-pane -p "コマンド プロンプト" cmd.exe /c "help.exe %1 & set /P x="

 行頭の@は、コマンドのエコーを抑制するためのものだ。このバッチファイルを作成するときに注意するのは、ファイルをシフトJIS形式で保存することだ。というのもWindows Terminalで標準として登録されるcmd.exeのプロファイルは「コマンド プロンプト」という日本語の名前になっているため、これを正しく解釈させるためには、文字コードをシフトJISにしたファイルが必要になるからだ。面倒なら、Windows Terminal側でプロファイルの名前をCMDなどのアスキー文字にしておくとよい。別ウィンドウの場合には、

@wt.exe -w HELP -p "コマンド プロンプト" --title %1 cmd.exe /c "help.exe %1 & set /P x="

とする。別ウィンドウとする場合、プロファイルとタイトルを指定してタブにアイコンとヘルプの対象を表示させたほうがあとから区別しやすい。

 PowerShellのスクリプトの場合には、以下のようなスクリプトを拡張子ps1のテキストファイルに保存する。PowerShellのスクリプトファイルでは、引数を受け付けることを「param」で示す必要がある。

param([string]$c)
wt.exe -w 0 split-pane -p "Windows PowerShell" --title $c powershell.exe -noexit -command {get-help $c; read-host}

コマンドをペイン分割して実行する

 ここでは、ヘルプ表示としたが、比較的よく使うコマンドがあれば、それに置き換えたバッチファイルなどを作ることができる。現在のタブをペインに分割してコマンドを実行するバッチファイルpane.batを以下のようにすることができる。

ペインによる分割位置をウィンドウの下1/3にして、scコマンドを実行。Windows Terminalの検索機能を使うと、大量のテキストを出力するコマンドでも簡単にキーワードを検索できる

@wt.exe -w 0 split-pane -H -d . --size 0.3 -p "コマンド プロンプト" cmd.exe /c "%1 %2 %3 %4 %5 %6 %7 %8 %9 & set /P x= & exit 0"

 ここで、「pane.bat dir /w」などしてコマンドをペイン内で実行可能だ。なお、エラー処理していないので、引数なしで実行してしまうとエラーとなる。この場合は、Ctrl+Shift+Wでペインを閉じる必要がある。Windows Terminalの検索機能などを使うと、コマンドのフィルター機能などを使わなくてもコマンド出力から文字列検索ができるので便利だ。

 Windows Terminalのコマンドラインオプションである「-w」を使うと、Windows Terminalの中から、コマンドを別ウィンドウやペイン内で実行できるようになる。Windowsのコマンドは、大量のテキストを出力するものが多く、コマンドのフィルター機能も正しいキーワードがわかっていないと利用できないことも多い。

 となると、履歴バッファを大きくしても、コマンドによってはあっという間にバッファを使い切ってしまうこともある。そんなとき、ペイン分割や別ウィンドウへの出力ができるとコマンドラインの使い方がちょっと違ってくる。

前へ 1 2 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

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