web-dev-qa-db-ja.com

Windowsバッチファイルからシステム環境変数を設定する

Windows 7のコマンドプロンプトからシステムレベルで環境変数を設定することは可能ですか(それどころかXPでさえ)。昇格したコマンドプロンプトから実行しています。

setコマンド(set name=value)を使用すると、環境変数はPromptコマンドのセッションに対してのみ有効になります。

177
Santhosh

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を持ってくると思います。

167
Hugh Allen

コマンドラインで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は、コマンドから実行してください。行管理ウィンドウ

125

SETXで変数を設定した場合、この変数またはその変更をすぐには使用できません。使用したいプロセスを再起動する必要があります。

設定プロセスで直接設定するには、次のシーケンスを使用してください(グローバル変数を設定した後にinitのものをいくつか実行するスクリプトで完璧に機能します)

SET XYZ=test
SETX XYZ test
18
Anton F.

XPの場合、私は "RAPIDEE"(Rapid Environment Editor)と呼ばれる(フリー/寄付金)ツールを使用しましたが、SETXは間違いなくWin 7には十分です(私はこれまで知りませんでした)。

2
FractalSpace

念のため、変数を削除する必要がある場合は、Vincent FaticaのSETENVを http://barnyard.syr.edu/~vefatica で入手できます。厳密には最近のものではなく('98)、それでもWindows 7 x 64上で動作しています。

1
abort

システム変数はCMDとレジストリを通して設定することができます。 reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"/v PATH

よく使われるCMDコードとシステム変数はすべてここにあります。 CMDを使ってWindowsシステム環境変数を設定する

CMDを開いてタイプ設定

システム変数のすべての値を取得します。

ウィンドウOSにインストールされているJavaのパス詳細を知るには、set Javaと入力します。

1
Himanshu Singh