web-dev-qa-db-ja.com

コマンドプロンプトからのWindows環境変数の設定と取得

Promptコマンドから環境変数を設定し、それからグローバルにアクセスできるようにしたい(例えば、System - > Environment Variablesをクリックすると見ることができるでしょう)。

Setコマンドを使用すると、新しいcmdセッションでアクセスできません。

set NEWVAR=SOMETHING
echo %NEWVAR%

関連する質問

204
Shane

環境変数をグローバルにアクセス可能にするには、レジストリに設定する必要があります。あなたがただ使用することによって実現したように:

nEWVAR = SOMETHINGを設定

現在のプロセス空間に設定しているだけです。

このページ に従って あなたは setx コマンドを使うことができます:

setx NEWVARいつか

setxはWindows 7に組み込まれていますが、古いバージョンでは Windowsリソースキット をインストールした場合にのみ利用可能になるかもしれません。

237
ChrisF

"setx var variable/M"を使用して、varをユーザーレベルではなくシステム環境変数レベルに設定することもできます。

注:このコマンドは管理者として実行する必要があります。

33
Minh Chau
setx program "C:\Program Files" /M

@ Minh Chau answerのように、ユーザーレベルではなくシステム環境変数レベルを設定するための/ M

テスト enter image description here

RESTARTコマンドライン(コマンドラインを再起動しないと、環境変数は機能しません)

enter image description here

9
Phan Van Linh

上記のようにsetx env var [/M]を使うことができます。有効にならない場合は、refreshenvを使用して環境変数を更新できます。コンピュータ、Explorer.exe、またはコマンドプロンプトを再起動する必要はありません。

1
DFSFOT

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

よく使用されるCMDコードとシステム変数をすべてここに示します。 CMDを使用してWindowsシステム環境変数を設定します

CMDを開き、Setと入力します。

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

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

1
Himanshu Singh

リモートコンピュータで環境変数を設定するためにsetxで/ sパラメータを使用している場合、ターゲットコンピュータで "Remote Registry"サービスが実行されている必要があります。そうしないと、 "ERROR:指定された操作を完了できませんでした。」

(私はマイクロソフトにsetxについての彼らの TechNetの記事を更新するように この情報を含むようにした。)

0
Tim Bailen