サイトについて      連絡先   検索

Windows 10 環境変数の設定と反映する方法

はじめに

Windows10 で環境変数の設定と反映する方法を紹介します。

環境変数画面とコマンドプロンプトと PowerShell から編集できます。設定はレジストリに保存されます。システム環境変数の編集には管理者権限が必要です。

設定が反映されるタイミングは各プログラムの再起動後です。

環境変数の基本や一覧を表示するには「環境変数の一覧と既定値」をご覧ください。
  • 目次
    • 環境変数画面から編集する
    • コマンドプロンプトから編集する
    • PowerShell から編集する
    • 設定が反映されるタイミング

環境変数画面から編集する

検索ボックスに環境変数と検索します。

1

「システム環境変数の編集」をクリックしたときは [環境変数] をクリックします。

2

どちらの方法でも環境変数を編集する画面が表示されます。表示されている値は使用時の値です。編集をクリックすると生の値を表示できます。

管理者ならすべての値を編集できますが、標準ユーザーはユーザー環境変数のみ編集できます。

編集するには [新規] をクリックするか、[環境変数] を選択してから [編集] や [削除] をクリックします。

3

[変数名] と [変数値] を入力して [OK] をクリックします。

変数値に複数の値を設定するには;で区切って値1;値2の形式で入力します。他の環境変数を参照するには%環境変数名%のように入力します。

4

編集されたので [OK] をクリックします。

5

環境変数が保存されました。設定が反映されるタイミングについては下記の「設定が反映されるタイミング」をご覧ください。

コマンドプロンプトから編集する

コマンドプロンプトに次のように入力して編集できます。コマンドや変数名に大文字と小文字の区別はありません。

変数名 Name に値 Value を設定するにはSETX Name Valueを入力して Enter キーを入力します。

6

環境変数が編集されました。

7

値に別の環境変数を使用するにはSETX Name ^%USERNAME^%のように変数名を^%で囲みます。

PowerShell から編集する

PowerShell に次のように入力して編集できます。コマンドや変数名に大文字と小文字の区別はありません。

変数名 Name に値 Value を設定するには[Environment]::SetEnvironmentVariable('Name', 'Value', 'User')を入力して Enter キーを入力します。

8

環境変数が編集されました。

9

値に別の環境変数を使用するにはそのまま[Environment]::SetEnvironmentVariable('Name', '%USERNAME%', 'User')のように%で変数名を囲みます。

設定が反映されるタイミング

環境変数画面で [OK] をクリックした時や、コマンドを実行した時点でレジストリに保存されます。しかし環境変数は各プログラムの起動時に取得しているため、既に起動中のプログラムには反映されません。それを再起動すると反映されますが、バックグラウンドで動作しているもには反映されません。

確実に反映させるには Windows を再起動します。

環境変数はレジストリの次の場所に保存されています。

ユーザー環境変数:
HKEY_CURRENT_USER\Environment
システム環境変数:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

反映されないとき

環境変数の優先順位は「プロセス」、「ユーザー」、「システム」の順になっています。同じ名前の環境変数があるときは、優先度の高いものを使用します。%USERPROFILE% のように保存されていないものは、すべてプロセスです。

そのため %USERPROFILE% をユーザーやシステムの環境変数に追加しても使用時には必ずプロセスの環境変数で上書きされ、反映されていないように見えます。

  • 目次
    • 環境変数画面から編集する
    • コマンドプロンプトから編集する
    • PowerShell から編集する
    • 設定が反映されるタイミング