Finalidad:Guarde una copia de la unidad de disco actual, directorio, entorno, alias y listas de funciones, y caracteres especiales.

 

Formato:SETLOCAL [GLOBALISTAS]

 

GLOBALISTASAlias ​​globales/funciones de variables de usuario

 

Ver también: ENDLOCAL.

 

Uso:

 

SETLOCAL se puede utilizar en la línea de comandos, en alias, en funciones de biblioteca y en archivos por lotes.

 

SETLOCAL guardará:

 

la unidad de disco y el directorio predeterminados

el entorno,

la lista de alias

la lista de funciones definidas por el usuario

La pila de directorios (PUSHD)

el conjunto de caracteres especiales (separador de comandos, carácter de escape, carácter de parámetro, separador decimal y separador de miles)

the SET DOS /X pólipo

the SETDOS /F pólipo

 

Después de usar SETLOCAL, puede cambiar los valores de cualquiera o todos los anteriores y luego restaurar los valores originales con un ENDLOCAL comando, o simplemente saliendo del archivo por lotes.

 

SETLOCAL no guarda el historial de comandos ni las variables de matriz.

 

Si tiene alias y/o funciones globales, SETLOCAL ahora los copiará a una lista local mientras dure SETLOCAL. El ENDLOCAL coincidente los restablecerá a la lista global. Si tiene alias o funciones tanto locales como globales definidos, SETLOCAL solo guardará la lista local (que será restaurada por ENDLOCAL).

 

SETLOCAL admite los argumentos EnableExtensions, DisableExtensions, EnableDelayedExpansion y DisableDelayedExpansion de CMD. (Aunque no son necesarios, ya que TCC ya sea que los establezca de forma predeterminada o mediante el comando OPCIÓN).

 

Por ejemplo, este fragmento de archivo por lotes guarda todo, elimina todos los alias para que los alias no afecten a los comandos del archivo por lotes, cambia el disco y el directorio, cambia el separador de comandos, ejecuta un programa y luego restaura los valores originales:

 

setlocal

unalias *

cdd d:\prueba

setdos /c~

programa ~ echo ¡Listo!

endlocal

 

SETLOCAL y ENDLOCAL se pueden anidar hasta 32 niveles de profundidad en cada archivo por lotes. También puedes tener múltiples SETLOCAL / ENDLOCAL Los pares dentro de un archivo por lotes y los archivos por lotes anidados pueden tener cada uno su propio SETLOCAL / ENDLOCAL pares.

 

SETLOCAL no anula el Alias ​​locales opción de configuración. En consecuencia, cambiar los alias dentro de un SETLOCAL / ENDLOCAL El par afecta la definición de alias de otras sesiones de ejecución simultánea de TCC.

 

También puede utilizar SETLOCAL y ENDLOCAL en un alias o en la línea de comando. El nivel máximo de anidamiento desde una línea de comando o alias es 32 niveles. A diferencia de los archivos por lotes, usted es responsable de hacer coincidir SETLOCAL / ENDLOCAL llamadas desde un alias o línea de comando; TCC no realizará un ENDLOCAL automático.

 

Un ENDLOCAL se realiza automáticamente al final de un archivo por lotes o al regresar de un "GOSUB nombre de archivo". Si invoca un archivo por lotes desde otro sin utilizar LLAMENOS, se finaliza el primer archivo por lotes y se ejecuta una ENDLOCAL es interpretado; el segundo archivo por lotes hereda la configuración tal como estaba antes de cualquier SETLOCAL.

 

Puede "exportar" variables modificadas desde dentro de un bloque SETLOCAL/ENDLOCAL. Ver ENDLOCAL para obtener más detalles.

 

Opciones:

 

GLOBALISTASEvite que SETLOCAL cambie a alias locales y listas de funciones de variables definidas por el usuario durante la duración de SETLOCAL.