CMD: SET : SETX :: %ABC% : ??? -- Erhalte "globale"/"ursprüngliche" Umgebung nach Änderung mit SET

CMD: SET : SETX :: %ABC% : ??? -- Erhalte "globale"/"ursprüngliche" Umgebung nach Änderung mit SET

SET "vorübergehend"setzt/ändert eine environment variable.

Wie erhalte ich das „Original“ / „Global“ / „Unveränderte“ aus einer Shell/einem Prozess, in dem es geändert wurde?


Um den Titel zu erklären: SETarbeitet in dem, was ich ein lokaler Geltungsbereichund SETXin einemweltweit1.
%ABC%bekomme ich die Variable aus demlokaler Geltungsbereich, aber ich suche etwas, um es von derweltweiteins.

Daher SET: SETX:: %ABC%: ???

Antwort1

Um Verwechslungen mit der in Domänen in Netzwerken verwendeten Terminologie zu vermeiden, sagen Sie statt „lokal“ „pro Benutzer“ und statt „global“ „pro Maschine“ (für alle lokalen Benutzer).

'Lokal' bedeutet eigentlich 'nur auf dieser Maschine' und könnte fürallelokale Benutzer.

Pro Maschine werden Variablen gespeichert in

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

Pro Benutzer werden Variablen gespeichert in HKEY_CURRENT_USER\Environment

SETX kann pro Benutzer oder pro Maschine erfolgen.

SET ist temporär (für die Dauer der CMD-Sitzung); SETX ist permanent (in der Registrierung gespeichert).

Mit SETX festgelegte Variablen sind in keiner CMD-Sitzung verfügbar, die zum Zeitpunkt der Festlegung geöffnet war. Sie sind in neuen CMD-Sitzungen verfügbar.

Um eine Variable „pro Maschine“ festzulegen, verwenden Sie die Option /M mit SETX.

Beispieldemo:

Geben Sie als Administrator Folgendes ein:

C:\WINDOWS\system32>setx apps %SystemDrive%\apps /m
SUCCESS: Specified value was saved.

Öffnen Sie dann ein weiteres Befehlsfenster als Nicht-Administrator:

C:\Users\jh>echo %apps%
C:\apps

Obwohl „apps“ maschinenweit ist, erhält %apps% den Wert für einen normalen Benutzer.

Daher ruft das Format „%ABC%“ sowohl Benutzer- als auch Maschinenvariablen ab.

Um diese Variable als Administrator zu löschen, führen Sie Folgendes aus:setx apps "" /m

verwandte Informationen