PowerShellで環境変数を設定する

PowerShell環境変数を設定する方法をメモしておく。

PowerShellには「何らかの階層化データ構造」をドライブとして抽象化する機能がある。データ構造の提供元をPSプロバイダ、PSプロバイダのデータPSドライブとして統一的な操作方法でアクセスできる(このへん、理解があいまい)。

PSドライブには通常のドライブのほかにレジストリ環境変数などがある。環境変数であれば、env:がドライブとなる。

get-childitem env:

環境変数の一覧を、

get-item env:OS

環境変数を取得できる。 また、

set-item env:testVariable -value testValue

でセッションの環境変数を作成・編集できる。 ユーザーまたはシステムの永続的な環境変数を設定したい場合、PowerShell組み込みのコマンドレットではできないので.NET FrameworkのEnvironmentクラスを利用して、

[Environment]::SetEnvironmentVariable("variable", "value", [EnvironmentVariableTarget]::User)

を実行すればよい。