はじめに
たまにしか設定しませんが、設定するとなった場合にどこから辿れば良いかを忘れてしまい、あたふたすることが多いので、PowerShell
から環境変数を設定する方法をまとめておこうと思います。
コマンドからの環境変数の一時設定
現在の設定を確認するコマンドは以下となり、「$Env:[変数名]」となります。
$Env:PATH
変数に値を追加するには「=」で設定を行います。
$Env:TEST = "variable test"
また、以下のような書式で記載することで、指定した環境変数の後ろに所定の値を追加することも可能です。
以下はPATH
に「C:\Users\UserName\APL\bin」を追加する場合の例。
$Env:PATH += ';' + 'C:\Users\UserName\APL\bin'
再度設定の確認コマンドを実行し、指定の変数が追加されていることが確認出来たら完了です。
コマンドからの環境変数の永続設定
現在の設定を確認するコマンドは以下となり、「[System.Environment]::GetEnvironmentVariable('[変数名]' , '[User or Machine]')」(User=ユーザ変数、Machine=システム変数)となります。
[System.Environment]::GetEnvironmentVariable('PATH' , 'User')
[System.Environment]::GetEnvironmentVariable('PATH' , 'Machine')
既存の変数に所定の値を追加する場合、一時設定と同じような書式で記載することもできますが、長くなって見づらくなるので、ちょっと面倒ですが仮の変数を作って、結果を結合して作ります。
$path = [System.Environment]::GetEnvironmentVariable('PATH' , 'User')
$path += ';' + 'C:\Users\UserName\APL\bin'
[System.Environment]::SetEnvironmentVariable('PATH' , $path , 'User')
$path = [System.Environment]::GetEnvironmentVariable('PATH' , 'Machine')
$path += ';' + 'C:\Users\UserName\APL\bin'
[System.Environment]::SetEnvironmentVariable('PATH' , $path , 'Machine')
再度設定の確認コマンドを実行し、指定の変数が追加されていることが確認出来たら完了です。
尚、システム変数のPATH
に追加する場合は管理者権限が必要となるため、PowerShell
を管理者モードで実行する必要があります。
一度PowerShell
を閉じたのち、再度開き、先ほど設定した変数が消えていなければ成功です。
おわりに
次に環境変数を設定する場合、自分が書いたこのページを見ながら設定することになると思うので、結局手間は変わりませんが、Windowsの構築をコマンドで行うような場合に使えそうです。
あまりWindows
には詳しくありませんが、1からWindows
を構築するようなことがあったら使ってみようと思います。