Startet die Begrenzung des Gültigkeitsbereiches von Umgebungsänderungen in einer Batchdatei.
Startet die Begrenzung des Gültigkeitsbereiches von Änderungen.
Änderungen der Umgebung nach SETLOCAL sind nur auf die Batchdatei bezogen.
Um die ursprünglichen Einstellungen wiederherzustellen, muss der Befehl
ENDLOCAL ausgeführt werden. Beim Erreichen des Endes einer Batchdatei wird ein
impliziertes ENDLOCAL für jegliche ausstehende SETLOCAL-Befehle ausgeführt.
SETLOCAL
Mit den Befehlserweiterungen wird der SETLOCAL-Befehl wie folgt geändert:
Der SETLOCAL-Batchbefehl akzeptiert jetzt optionale Argumente:
ENABLEEXTENSIONS / DISABLEEXTENSIONS
Aktiviert bzw. deaktiviert Befehlsprozessorerweiterungen.
Diese Argumente haben Vorrang gegenüber den Optionen
"CMD /E:ON" oder "CMD /E:OFF". Geben Sie CMD /?
ein, um weitere Informationen zu erhalten.
ENABLEDELAYEDEXPANSION / DISABLEDELAYEDEXPANSION
Aktiviert bzw. deaktiviert die verzögerte Erweiterung von
Umgebungsvariablen. Diese Argumente haben Vorrang gegenüber
den Optionen "CMD /V:ON" oder "/V:OFF". Geben Sie CMD /? ein,
um weitere Informationen zu erhalten.
Diese Änderungen sind bis zum übereinstimmenden ENDLOCAL-Befehl gültig,
und zwar unabhängig von vorherigen Einstellungen für den SETLOCAL-Befehl.
Der SETLOCAL-Befehl legt einen ERRORLEVEL-Wert fest, wenn ein Argument
angegeben wird. Dieser ist 0, wenn eines der beiden gültigen
Argumente angegeben wird, und andernfalls 1. Kann in Batchskripts verwendet
werden, um festzustellen, ob die Erweiterungen verfügbar sind. Dies kann
wie folgt geprüft werden:
VERIFY OTHER 2>nul
SETLOCAL ENABLEEXTENSIONS
IF ERRORLEVEL 1 echo keine Befehlserweiterungen möglich
Dies funktioniert, da in älteren Versionen von CMD.EXE der
SETLOCAL-Befehl keinen ERRORLEVEL-Wert festlegt. Der VERIFY-Befehl mit einem
ungültigen Argument initialisiert den ERRORLEVEL-Wert mit einem Wert
ungleich 0.
Hinterlasse einen Kommentar
Du musst angemeldet sein, um einen Kommentar schreiben zu können.