回答:
XPサポートツール(XP CDからインストールできます)には、次のプログラムが付属していsetx.exe
ます。
C:\Program Files\Support Tools>setx /?
SETX: This program is used to set values in the environment
of the machine or currently logged on user using one of three modes.
1) Command Line Mode: setx variable value [-m]
Optional Switches:
-m Set value in the Machine environment. Default is User.
...
For more information and example use: SETX -i
Windows 7は実際にはsetx
標準インストールの一部として付属していると思います。
where
からプログラムの名前を入力することで、このプログラムがパスにあるかどうかを常に確認できることを忘れないでください(この場合where setx.exe
、Server 2008およびServer 2008SP2ボックスでこれをテストした場合、どちらの場合にも存在していたことがわかりました%windir%\System32\setx.exe
-
スラッシュに変更されました/
。ただし、-
バージョンはまだ機能しているようです。
/
で、ダッシュ-
は機能しません。setx variable value /m
setx.exe
コマンドラインでJAVA_HOMEを設定する簡単な例:
setx JAVA_HOME "C:\Program Files (x86)\Java\jdk1.7.0_04"
これにより、現在のユーザーの環境変数「JAVA_HOME」が設定されます。すべてのユーザーに変数を設定する場合は、オプション「-m」を使用する必要があります。次に例を示します。
setx -m JAVA_HOME "C:\Program Files (x86)\Java\jdk1.7.0_04"
注:このコマンドは管理者として実行する必要があります。
注:コマンドを必ず実行してくださいコマンドラインの管理ウィンドウから setx
Progra~1
そうのように: setx /M JAVA_HOME "C:\Progra~1\Java\jdk1.7.0_09"
SETXを介して変数を設定した場合、この変数またはその変更をすぐに使用することはできません。使用したいプロセスを再起動する必要があります。
次のシーケンスを使用して、設定プロセスで直接設定することもできます(グローバル変数の設定後にいくつかの初期化を行うスクリプトで完全に機能します)。
SET XYZ=test
SETX XYZ test
refreshenv
新しい変数を利用するためにsetxを使用した後にコマンドを実行することもできます。
refreshenv
はコマンドとして認識されません。あなたはこれをしていますcmd
かpowershell
?(編集:実際には両方でテストされ、どちらのコンソールでも機能しません)
システム変数は、CMDとレジストリFor exを使用して設定できます。reg query "HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Environment" / v PATH
一般的に使用されるすべてのCMDコードとシステム変数を以下に示します。CMDを使用してWindowsシステム環境変数を設定します。
CMDを開いてSetと入力します
システム変数のすべての値を取得します。
set javaと入力して、ウィンドウOSにインストールされているjavaのパスの詳細を確認します。
変数を削除する必要がある場合に備えて、http: //barnyard.syr.edu/~vefaticaで入手可能なVincent FaticaのSETENVを使用できます。正確には最近('98)ではありませんが、Windows 7 x64で動作しています。
-i
フラグはなく、実行setx /?
するだけですべてのヘルプと例が表示されます