Setlocal (Comandos de MS-Dos)

compártelo en Facebook!

Comienza la sección de cambios locales de entorno en
un archivo por lotes. Los cambios de entorno
hechos después de que se haya emitido SETLOCAL son
locales en el archivo por lotes.
ENDLOCAL debe ser emitido para restaurar la
configuración anterior. Cuando se llega al final de
un archivo de secuencias de comandos por lotes, se
ejecuta un ENDLOCAL implícito para cualquier comando SETLOCAL pendiente que se h
aya emitido para este
archivo de secuencias de comandos por lotes.

SETLOCAL

Si las extensiones de comandos están habilitadas SETLOCAL cambia así:

Ahora el comando del archivo por lotes SETLOCAL acepta argumentos opcionales:
ENABLEEXTENSIONS / DISABLEEXTENSIONS
Habilitar o deshabilitar las extensiones del procesador de comandos.
Ver CMD /? para más detalles
ENABLEDELAYEDEXPANSION / DISABLEDELAYEDEXPANSION
Habilita o deshabilita la expansión de la variable de entorno retard
ada. Ver SET /? para más detalles. Estas modificaciones duran hasta que coincida
el comando ENDLOCAL, independientemente de su configuración anterior
para el comando SETLOCAL.

El comando SETLOCAL establecerá el valor ERRORLEVEL si se diera un argumento.
Será cero si se da uno de los dos argumentos válidos y el otro no.
Puede usar esto en los archivos de proceso por lotes para determinar si las exte
nsiones están disponibles usando la siguiente técnica:

VERIFY OTHER 2>null
SETLOCAL ENABLEEXTENSIONS
IF ERRORLEVEL 1 echo No puede activar las extensiones

Esto funciona porque en las versiones anteriores de CMD.EXE, SETLOCAL no estable
cía el valor de ERRORLEVEL. El comando VERIFY con un argumento
erróneo inicializa el valor ERRORLEVEL a un valor distinto de cero.

Enlace permanente a este artículo: http://www.borhaps.es/setlocal-comandos-de-ms-dos/

publi