2009-12-06 21:52:22 +0000 2009-12-06 21:52:22 +0000
226
226

Setzen und Abrufen von Windows-Umgebungsvariablen über die Eingabeaufforderung?

Ich möchte eine Umgebungsvariable über die Eingabeaufforderung setzen und dann global darauf zugreifen können (z. B. sollte ich sie sehen, indem ich zu System -> Umgebungsvariablen gehe).

Wenn ich den set-Befehl verwende, ist sie in einer neuen cmd-Sitzung nicht zugänglich.

set NEWVAR=SOMETHING
echo %NEWVAR%

Verwandte Fragen:

Antworten (6)

260
260
260
2009-12-06 21:58:09 +0000

Um die Umgebungsvariable global zugänglich zu machen, müssen Sie sie in der Registry setzen. Wie Sie durch die einfache Verwendung von:

set NEWVAR=SOMETHING

realisiert haben, setzen Sie sie einfach im aktuellen Prozessraum.

Laut dieser Seite können Sie den Befehl setx verwenden:

setx NEWVAR SOMETHING

setx ist in Windows 7 integriert, aber für ältere Versionen ist er möglicherweise nur verfügbar, wenn Sie das Windows Resource Kit

36
36
36
2014-08-26 10:37:26 +0000

Wir können auch “setx var variable /M” verwenden, um die Variable var auf Systemumgebungsvariablenebene statt auf Benutzerebene zu setzen.

Hinweis: Dieser Befehl sollte als Administrator ausgeführt werden.

11
11
11
2017-02-08 14:54:39 +0000
setx program "C:\Program Files" /M

/M für das Setzen der Ebene der Systemumgebungsvariablen statt der Benutzerebene wie bei @Minh Chau Antwort

Test

RESTART Befehlszeile (wenn Sie die Befehlszeile nicht neu starten, funktioniert die Umgebungsvariable nicht)

2
2
2
2017-03-09 05:06:52 +0000

Systemvariablen können über CMD und Registry gesetzt werden, z.B. reg Abfrage “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment” /v PATH

Hier werden alle gängigen CMD-Codes und Systemvariablen angegeben: Windows-Systemumgebungsvariablen mit CMD setzen .

Öffnen Sie CMD und tippen Sie Set

Sie erhalten alle Werte der Systemvariablen.

Geben Sie set java ein, um die Pfaddetails von Java zu kennen, das auf Ihrem Windows-OS installiert ist.

2
2
2
2018-11-13 19:42:06 +0000

Sie können setx env var [/M] wie oben erwähnt verwenden. Wenn es nicht wirksam wird, können Sie refreshenv verwenden, um Umgebungsvariablen zu aktualisieren. Dazu müssen Sie Ihren Computer, explorer.exe oder Ihre Eingabeaufforderung nicht neu starten.

Bearbeiten: Offenbar ist das Auffrischen von Windows nicht selbstverständlich, daher hier die Quelle: https://pastebin.com/1fJqA0pT Speichern Sie als RefreshEnv.cmd und legen Sie sie in einen Ordner, der in Ihren PATH-Umgebungsvariablen enthalten ist

0
0
0
2017-05-18 19:35:20 +0000

Ich möchte hinzufügen, dass, wenn Sie den Parameter /s mit setx verwenden, um Umgebungsvariablen auf einem Remote-Computer zu setzen, der “Remote Registry”-Dienst auf dem Zielcomputer ausgeführt werden muss, andernfalls erhalten Sie ein “FEHLER: Der angegebene Vorgang konnte nicht abgeschlossen werden”

(Ich habe Microsoft gebeten, ihren TechNet-Artikel zu setx zu aktualisieren, um diese Informationen aufzunehmen).