Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Inicia la localización de variables de entorno en un archivo por lotes. La localización continúa hasta que se encuentra un comando endlocal coincidente o se alcanza el final del archivo por lotes.
Syntax
setlocal [enableextensions | disableextensions] [enabledelayedexpansion | disabledelayedexpansion]
Parameters
| Parameter | Description |
|---|---|
| enableextensions | Habilita las extensiones de comando hasta que se encuentra el comando endlocal coincidente, independientemente de la configuración antes de que se ejecutara el comando setlocal . |
| disableextensions | Deshabilita las extensiones de comando hasta que se encuentre el comando endlocal coincidente, independientemente de la configuración anterior a la ejecución del comando setlocal . |
| enabledelayedexpansion | Habilita la expansión de la variable de entorno retrasada hasta que se encuentre el comando endlocal coincidente, independientemente de la configuración antes de que se ejecutara el comando setlocal . |
| disabledelayedexpansion | Deshabilita la expansión de la variable de entorno retrasada hasta que se encuentre el comando endlocal coincidente, independientemente de la configuración anterior a la ejecución del comando setlocal . |
| /? | Muestra ayuda en el símbolo del sistema. |
Remarks
Si usa setlocal fuera de un script o archivo por lotes, no tiene ningún efecto.
Use setlocal para cambiar las variables de entorno al ejecutar un archivo por lotes. Los cambios de entorno realizados después de ejecutar setlocal son locales para el archivo por lotes. El programa Cmd.exe restaura la configuración anterior cuando encuentra un comando endlocal o llega al final del archivo por lotes.
Puede tener más de un comando setlocal o endlocal en un programa por lotes (es decir, comandos anidados).
El comando setlocal establece la variable ERRORLEVEL. Si pasa {enableextensions | disableextensions} o {enabledelayedexpansion | disabledelayedexpansion}, la variable ERRORLEVEL se establece en 0 (cero). De lo contrario, se establece en 1. Puede usar esta información en scripts por lotes para determinar si las extensiones están disponibles, como se muestra en el ejemplo siguiente:
verify other 2>nul setlocal enableextensions if errorlevel 1 echo Unable to enable extensionsDado que cmd no establece la variable ERRORLEVEL cuando las extensiones de comando están deshabilitadas, el comando verify inicializa la variable ERRORLEVEL en un valor distinto de cero cuando se usa con un argumento no válido. Además, si usa el comando setlocal con argumentos {enableextensions | disableextensions} o {enabledelayedexpansion | disabledelayedexpansion} y no establece la variable ERRORLEVEL en 1, las extensiones de comando no están disponibles.
Examples
Para localizar variables de entorno en un archivo por lotes, siga este script de ejemplo:
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