コマンドラインオプションの追加
v1.19では、コマンドラインオプションも追加されている。1つは、v1.18で対応された環境変数の追従機能の制御である。v1.18では実行モデルが変更になったことで、各プロファイルは起動時の環境変数を引き継ぐようになった。v1.17までは親プロセスの環境変数をすべてのプロファイルが引き継ぐしかなかった。
プログラムのインストール作業などの場合には、新しい環境変数が使われる方がありがたいが、シェルから子プロセスを実行するような場合、最新の環境変数ではなく、親と同じ環境変数を引き継ぎたい場合もある。親プロセスで環境変数を定義して、子プロセスで利用するといった場合だ。
このようなとき、子プロセスとして起動されるwindows Terminalの環境変数を、親プロセスのものに強制するオプションとして「--inheritEnvironment」が、引き継がずに最新の環境変数を受け取るオプションとして「--reloadEnvironment」が用意された。デフォルトは、親プロセスの環境変数を受け取る「--inheritEnvironment」なので、何も指定しないと、親と同じ環境変数を受け継ぐ。
なお、この動作は、settings.jsonのグローバル設定で「compatibility.reloadEnvironmentVariables」を設定することで、v1.17と同じ挙動に戻すことができる。
もう1つの新規オプションは、「--appendCommandLine」フラグオプションで、これを指定すると、プロファイルの起動コマンドに、後続するコマンドを追加してプロファイルを起動する。これは、new-tab、split-paneサブコマンド内で利用する。たとえば、new-tabサブコマンドなどで、
wt.exe --appendCommandLine -p "PowerShell" -- -nop -noexit -command echo hello
と指定すると、PowerShellプロファイルに定義されているcommandlineに、後続の「-nop」(-noprofileの省略形)を追加して起動を行う。なお「--」は、後続のハイフン文字をWindows Terminalのオプションとして処理しないことを示す「POSITIONAL MARK」と呼ばれるWindows Terminalの記法である。ハイフンを含む引数を指定するときなどに利用する。
なお、コマンドラインに関しては、本連載の以前の記事(「Windows Terminalのコマンドラインを極める」)を参考にしてほしい。
今回の改良はそれほど派手なものではないが、筆者的には、rubyのirbが動作するようになった内部的な改良を評価したい。これまでWindows Terminalで挙動がおかしかったコマンドがあるようなら、v1.19を試してみる価値はある。
この連載の記事
-
第433回
PC
Windows 11の2つのウィジェットを調べる -
第432回
PC
ウェブブラウザが切り開いたWindowsでのタブアプリケーション -
第431回
PC
Windows上でユニコードを「見る」方法 -
第430回
PC
WindowsからWordPadが廃止! RTF(Rich Text Format)はどうなる? -
第429回
PC
Windows Updateの「利用可能になったらすぐに最新の更新プログラムを入手する」はオンにした方がいいか? -
第428回
PC
Google/Bingで使える検索オプション -
第427回
PC
WindowsのPowerShellのプロファイルを設定する -
第426回
PC
WindowsでAndroidスマホをWebカメラにする機能を試した -
第425回
PC
無料で使えるExcelにWord、Microsoft 365のウェブ版を調べた -
第424回
PC
Windowsの基本機能であるクリップボードについてあらためて整理 -
第423回
PC
PowerShellの今を見る 2つあるPowerShellはどっち使えばいい? - この連載の一覧へ