Ferramentas de Linha de Comando

Comando Setlocal


( Retorna à Lista completa de comandos Shell )

Comando Setlocal


Inicia a localização de variáveis de ambiente em um arquivo em lotes. A localização continuará até que um comando endlocal correspondente seja encontrado ou o final do arquivo em lotes seja alcançado.

Sintaxe
setlocal {enableextension | disableextensions} {enabledelayedexpansion | disabledelayedexpansion}

Argumentos
enableextension
Ativa as extensões de comando até que o comando endlocal correspondente seja encontrado, independentemente da configuração anterior ao comando setlocal.
disableextensions
Desativa as extensões de comando até que o comando endlocal correspondente seja encontrado, independentemente da configuração anterior ao comando setlocal.
enabledelayedexpansion
Ativa a expansão de variáveis de ambiente atrasada até que o comando endlocal correspondente seja encontrado, independentemente da configuração anterior ao comando setlocal.
disabledelayedexpansion
Desativa a expansão de variáveis de ambiente atrasada até que o comando endlocal correspondente seja encontrado, independentemente da configuração anterior ao comando setlocal.
/?
Exibe ajuda no prompt de comando.
Comentários
Usando setlocal
Quando você usa setlocal fora de um arquivo em lotes ou de script, o comando não tem nenhum efeito.

Alterando variáveis de ambiente
Use o comando setlocal para alterar variáveis de ambiente ao executar um arquivo em lotes. As alterações de ambiente feitas após a execução do comando setlocal são locais para o arquivo em lotes. O Cmd.exe restaura configurações anteriores quando encontra um comando endlocal ou alcança o final do arquivo em lotes.

É possível ter mais de um comando setlocal ou endlocal em um programa em lotes (isto é, comandos aninhados).
Testando extensões de comando em arquivos em lotes
O comando setlocal define a variável ERRORLEVEL. Se você especificar {enableextension | disableextensions} ou {enabledelayedexpansion | disabledelayedexpansion}, a variável ERRORLEVEL será definida como zero (0). Caso contrário, será definida como um (1). Você pode usar isso em scripts em lotes para determinar se as extensões estão disponíveis, por exemplo:

verify other 2>nulo
setlocal enableextensions
if errorlevel 1 echo Não é possível ativar as extensões
Como cmd não define a variável ERRORLEVEL quando as extensões de comando estão desativadas, o comando verify inicializa essa variável como um valor não zero quando você o utiliza com um argumento inválido. Além disso, se você usar o comando setlocal com os argumentos {enableextension | disableextensions} ou {enabledelayedexpansion | disabledelayedexpansion} e ele não definir a variável ERRORLEVEL como um (1), as extensões de comando não estarão disponíveis.

Para obter mais informações sobre como ativar e desativar extensões de comando, consulte cmd em Tópicos relacionados.

Exemplos
Você pode localizar variáveis de ambiente em um arquivo em lotes, da seguinte maneira:


rem *******Início de comentário**************
rem Este programa inicia o arquivo em lotes superapl na rede,
rem direciona a saída para um arquivo e exibe o arquivo
rem no Bloco de notas.
rem *******Fim de comentário**************
@echo off
setlocal
path=g:\programas\superapl;%path%
chamar superapl>c:\superapp.out
endlocal
start notepad c:\superapl.out

Sistemas Operacionais | Linux Comandos | Linux Shell Script | Atalhos do Office | Literatura e Leitura | Principais Autores | História da Literatura |


Formatando legenda
FormatoSignificado
Itálico Informações que o usuário deve fornecer
Negrito Elementos que o usuário deve digitar exatamente como mostrado
Reticências (...) Parâmetro que pode ser repetido várias vezes em uma linha de comando
Entre colchetes ([]) Itens opcionais
Entre chaves ({});opções separadas por barra vertical (|).Exemplo: {even|odd}Conjunto de opções entre as quais o usuário deve escolher apenas uma
Fonte Courier Código ou resultado de um programa


Envie seu comentário:
Nome:

E-mail:

Comentário:


Fonte: •Manual do Windows XP • ( Literatura e Leitura ) • ( Dicas sobre Sistemas Operacionais ) • ( Retorna à Lista completa de comandos Shell ) •