Você já se perguntou: “Qual é a melhor maneira de encerrar um script ou sair de um comando no PowerShell?” A sessão do PowerShell será encerrada com o comando de saída do PowerShell? Como retornar códigos de saída personalizados? Bem, você está com sorte!
Neste guia, você terá essas perguntas e outras respondidas. Aprenda sobre todas as maneiras de sair de um script ou sessão do PowerShell.
Vamos nos preparar para encerrar algumas sessões e scripts do PowerShell!
Pré-requisitos
Para acompanhar, certifique-se de ter o Windows PowerShell ou o PowerShell Core instalado em sua máquina. Os exemplos neste artigo usarão PowerShell 7.1.4.
Encerrando o Console e Scripts com o Comando de Saída do PowerShell
Vamos aprofundar neste tutorial e cobrir primeiro a palavra-chave exit
, uma das muitas palavras reservadas no PowerShell. Uma palavra reservada é um conjunto de caracteres incorporados no PowerShell que executa alguma ação. Para a palavra-chave exit
, a ação é fazer com que o PowerShell encerre uma sessão do PowerShell.
Vamos praticar! Abra uma sessão do console do PowerShell, digite exit
e pressione a tecla Enter. O console do PowerShell será imediatamente fechado.
Esta palavra-chave também pode encerrar um script em vez da sessão do console. Incluir a palavra-chave exit
em um script e exit
encerra apenas o script e não a sessão completa do console de onde o script é executado.
Copie e cole o código abaixo no bloco de notas e salve o script como test.ps1 no diretório C:\Temp. Execute o arquivo de script do PowerShell digitando o comando .\text.ps1
, conforme mostrado na captura de tela abaixo. Observe que, em vez de o PowerShell fechar a sessão, ele encerra o script e retorna o controle para o prompt da sessão atual do PowerShell.

exit
keyword stopped the script execution, but the console is still running Recebendo e fornecendo feedback com códigos de saída
O comando exit
é útil em situações em que você precisa que um script ou função execute algum código e saia. No entanto, você não recebe nenhuma indicação se o script foi executado com sucesso ou não.
Quando o PowerShell executa o último comando em um script, ele armazena o código de saída desse último comando na variável $LASTEXITCODE
.
Há dois códigos de saída padrão:
- 0 – significando sucesso: término normal
- 1 – significando falha: uma exceção não capturada
O PowerShell não o restringe a 0
e 1
como códigos de saída. O PowerShell permite que você retorne códigos de saída personalizados, desde que sejam inteiros.
O intervalo de valores para o código de saída depende da plataforma. No Windows, são permitidos quaisquer inteiros de 32 bits com sinal. No Unix, apenas inteiros positivos de 8 bits são permitidos.
Para sair do PowerShell com um código de saída personalizado, você pode fornecer o código de saída como argumento para a palavra-chave exit.
Copie e cole o código abaixo no arquivo test.ps1 existente e execute o script com o comando .\Test.ps1
. Verifique o conteúdo da variável $LASTEXITCODE
. Ao indicar para o PowerShell sair com um código de saída 55
, ele o fez, como você pode ver abaixo.

Saindo de Laços Com Break
Haverá momentos em que o comportamento de exit
não será aceitável: como sair de uma função. Vamos ver como a palavra-chave break
ajuda.
A palavra-chave break
faz com que o PowerShell interrompa um laço. Após um break
, o código continua sendo executado na próxima iteração.
Quebras são úteis em loops do PowerShell, como o foreach, while, do-while e declarações switch, porque você pode controlar onde seu código irá parar antes de ser concluído.
Vamos praticar sair de loops. Abaixo você pode ver um trecho de código com um loop for. O loop for iteraria dez vezes se não fosse o break
dentro dele. A palavra-chave break
será acionada quando o iterador for igual a oito. Uma vez que o PowerShell encontra a palavra-chave break
, ele interrompe o loop.
Você pode ver abaixo que o PowerShell interrompe o loop quando i
é igual a 8. O código nunca chega a 9. Você saiu com sucesso de um loop for.

Redirecionando a Execução do Código com o Return
O keyword return
é ligeiramente diferente das palavras-chave anteriores, pois não sai ou interrompe comandos. Esta palavra-chave redireciona a execução do código, retornando-a à sua chamada, permitindo que você retorne valores. E não apenas inteiros, como o exit
, observe bem. Você pode retornar qualquer tipo! Esses comportamentos tornam a palavra-chave return
mais versátil do que as palavras-chave anteriores.
Vamos ver isso em ação com um exemplo: construindo uma função para agrupar palavras. Copie o código abaixo para a sua sessão do PowerShell:
Observe como o valor que você está retornando da função aparece na saída.

return
keyword Você redireciona o $output
gerado pela função WordPairing
de volta para onde o $output
é chamado.
Conclusão
Neste guia, você aprendeu diferentes maneiras de encerrar sessões e scripts do PowerShell. Cada método depende de uma palavra-chave específica. Cada palavra-chave tem um caso de uso particular. Quando usadas apropriadamente, cada uma dessas palavras-chave oferece um controle enorme sobre o que seu script faz.
Agora que você conhece diferentes maneiras de encerrar suas sessões do PowerShell, como pretende melhorar seus scripts com esse conhecimento recém-adquirido?