Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Startet die Lokalisierung von Umgebungsvariablen in einer Batchdatei. Die Lokalisierung wird fortgesetzt, bis ein passender endlocal-Befehl gefunden wird oder das Ende der Batch-Datei erreicht ist.
Syntax
setlocal [enableextensions | disableextensions] [enabledelayedexpansion | disabledelayedexpansion]
Parameters
| Parameter | Description |
|---|---|
| enableextensions | Aktiviert die Befehlserweiterungen, bis der entsprechende endlocal-Befehl gefunden wird, unabhängig von der Einstellung, bevor der setlocal-Befehl ausgeführt wurde. |
| disableextensions | Deaktiviert die Befehlserweiterungen, bis der entsprechende endlocal-Befehl gefunden wird, unabhängig von der Einstellung, bevor der setlocal-Befehl ausgeführt wurde. |
| enabledelayedexpansion | Aktiviert die verzögerte Erweiterung der Umgebungsvariablen, bis der entsprechende endlocal-Befehl gefunden wird, unabhängig von der Einstellung, bevor der setlocal-Befehl ausgeführt wurde. |
| disabledelayedexpansion | Deaktiviert die verzögerte Erweiterung der Umgebungsvariablen, bis der entsprechende endlocal-Befehl gefunden wird, unabhängig von der Einstellung, bevor der setlocal-Befehl ausgeführt wurde. |
| /? | Zeigt hilfe an der Eingabeaufforderung an. |
Remarks
Wenn Sie setlocal außerhalb eines Skripts oder einer Batchdatei verwenden, hat dies keine Auswirkungen.
Verwenden Sie setlocal , um Umgebungsvariablen zu ändern, wenn Sie eine Batchdatei ausführen. Umgebungsänderungen, die nach dem Ausführen von setlocal vorgenommen werden, sind lokal in der Batchdatei. Das Cmd.exe Programm stellt vorherige Einstellungen wieder her, wenn es auf einen endlocal-Befehl stößt oder das Ende der Batch-Datei erreicht.
Sie können mehr als einen setlocal - oder endlocal-Befehl in einem Batch-Programm haben (d. h. verschachtelte Befehle).
Der Befehl setlocal legt die Variable ERRORLEVEL fest. Wenn Sie {enableextensions | disableextensions} oder {enabledelayedexpansion | disabledelayedexpansion} übergeben, wird die Variable ERRORLEVEL auf 0 (null) festgelegt. Andernfalls wird sie auf 1 gesetzt. Sie können diese Informationen in Batchskripts verwenden, um zu bestimmen, ob die Erweiterungen verfügbar sind, wie im folgenden Beispiel gezeigt:
verify other 2>nul setlocal enableextensions if errorlevel 1 echo Unable to enable extensionsDa cmd die Variable ERRORLEVEL nicht festlegt, wenn Befehlserweiterungen deaktiviert sind, initialisiert der Befehl verify die Variable ERRORLEVEL auf einen Wert ungleich Null, wenn Sie ihn mit einem ungültigen Argument verwenden. Wenn Sie den Befehl setlocal mit den Argumenten {enableextensions | disableextensions} oder {enabledelayedexpansion | disabledelayedexpansion} verwenden und die Variable ERRORLEVEL nicht auf 1 festgelegt wird, sind Befehlserweiterungen nicht verfügbar.
Examples
Um Umgebungsvariablen in einer Batchdatei zu lokalisieren, folgen Sie diesem Beispielskript:
rem *******Begin Comment**************
rem This program starts the superapp batch program on the network,
rem directs the output to a file, and displays the file
rem in Notepad.
rem *******End Comment**************
@echo off
setlocal
path=g:\programs\superapp;%path%
call superapp>c:\superapp.out
endlocal
start notepad c:\superapp.out