目次
ユーザーの環境変数
- 取得には
GetEnvironmentVariable
を利用します。 - 設定には
SetEnvironmentVariable
を利用します。 EnvironmentVariableTarget
にはUser
を指定します。
取得
[System.Environment]::GetEnvironmentVariable(<変数名>, [System.EnvironmentVariableTarget]::User)
省略して書いた場合
[Environment]::GetEnvironmentVariable(<変数名>, 'User')
設定
[System.Environment]::SetEnvironmentVariable(<変数名>, <値>, [System.EnvironmentVariableTarget]::User)
省略して書いた場合
[Environment]::SetEnvironmentVariable(<変数名>, <値>, 'User')
システムの環境変数
- 取得には
GetEnvironmentVariable
を利用します。 - 設定には
SetEnvironmentVariable
を利用します。 EnvironmentVariableTarget
にはMachine
を指定1します。
取得
[System.Environment]::GetEnvironmentVariable(<変数名>, [System.EnvironmentVariableTarget]::Machine)
省略して書いた場合
[Environment]::GetEnvironmentVariable(<変数名>, 'Machine')
設定
[System.Environment]::SetEnvironmentVariable(<変数名>, <値>, [System.EnvironmentVariableTarget]::Machine)
省略して書いた場合
[Environment]::SetEnvironmentVariable(<変数名>, <値>, 'Machine')
全取得
- 全取得には
GetEnvironmentVariables
やenvドライブ
を利用します。
GetEnvironmentVariables
[Environment]::GetEnvironmentVariables()
envドライブ
Get-ChildItem env:
PATHへの追加
GetEnvironmentVariable
で変数PATH
を取得してきた後、変数に値を文字列として追加し、再度SetEnvironmentVariable
にて設定します。
$path = [System.Environment]::GetEnvironmentVariable('PATH', [System.EnvironmentVariableTarget]::User) $path += ';' + 'C:\path\to\anywhere' [System.Environment]::SetEnvironmentVariable('PATH', $path, [System.EnvironmentVariableTarget]::User)
参考
参考サイト
- (Qiita) Windowsの環境変数をPowerShellで書き変える
- (Qiita) Windows環境変数の設定に「SETX」コマンドを使ってはいけない理由
- (Qiita)PowerShellで環境変数PATHにパスを追加・削除・置換する
- (WIN.JUST4FUN.BIZ) PowerShellで環境変数一覧を表示する方法・Get-ChildItem env:
- (Microsoft | Docs) about_Environment_Variables
-
システムとかじゃなくて、マシーンなんですね。 ↩︎