14Sep

Como escrever um script em lote no Windows

click fraud protection

Você sabe como usar o prompt de comando? Se você fizer isso, você pode escrever um arquivo em lote. Na sua forma mais simples, um arquivo em lotes( ou script em lote) é uma lista de vários comandos que são executados quando você clica duas vezes no arquivo. Os arquivos em lote vão todo o caminho de volta ao DOS, mas ainda funcionam em versões modernas do Windows.

Os scripts PowerShell e os scripts Bash podem ser mais poderosos, mas os arquivos em lote ainda podem ser muito úteis se você precisar executar comandos básicos do Windows.

Batch File Basics

Um arquivo em lote é simplesmente um arquivo de texto salvo com a extensão de arquivo. bat. Você pode escrever um usando Notepad ou um editor de texto mais avançado como o Notepad ++, mas não use um processador de texto como o Microsoft Word.

Vamos criar um arquivo de lote simples. Primeiro, abra o Bloco de Notas. Digite as seguintes linhas nele:

ECHO OFF ECHO Olá Mundo PAUSE

Em seguida, guarde o arquivo clicando em Arquivo & gt;Salve .Dê-lhe qualquer nome que você gosta, mas substitua a extensão de arquivo. txt padrão pela extensão. bat.

instagram viewer

Por exemplo, você pode querer nomeá-lo hello_world.bat.

Agora você possui um arquivo em lotes com a extensão de arquivo. bat. Clique duas vezes nele para executá-lo. Este arquivo de lote particular define ECHO fora( que limpa a saída escondendo os comandos de serem impressos no prompt, imprime o texto "Olá Mundo" na tela e, em seguida, espera que você pressione uma tecla antes de terminar.

Sevocê não adicionou PAUSE ao arquivo, o arquivo em lotes simplesmente executaria seus comandos e então fecharia automaticamente. Neste caso, ele imprimiria "Olá Mundo" para a janela e então feche imediatamente a janela do prompt de comando. Quando quiserExecute rapidamente os comandos sem ver a saída, você pode omitir isso. Se você estiver executando vários comandos, você poderia colocar o comando PAUSE entre eles.

Escrevendo um arquivo de lotes mais complexo

É fundamentalmente simples criar um arquivo em lote. O únicoA coisa que você precisa alterar é o que você digita no Bloco de notas. Para executar vários comandos, digite cada um em sua própria linha e o arquivo em lote executará cada um em ordem.

Por exemplo, digamos que queremos escrever um arquivo em lote quecorre sevcomandos de diagnóstico de rede eral. Podemos querer executar o ipconfig / all para ver as informações da rede, clique no google.com para ver se os servidores do Google estão respondendo e tracert google.com para executar uma traceroute para o google.com e ver se existem problemas no caminho.

Na forma mais básica, podemos simplesmente colocar todos esses comandos em um arquivo em lote, um após o outro, assim:

ipconfig / all ping google.com tracert google.com PAUSE

Quando executamos este arquivo, gostaríamosBasta ver a saída de cada comando logo após a outra. Mas esta não é necessariamente a maneira ideal de escrever um arquivo em lote.

Por exemplo, você pode querer adicionar linhas de comentários. Qualquer linha que comece com um: : é uma linha de comentários e não será executada. Isso os torna uma maneira útil de explicar o que está acontecendo no arquivo para quem você pode dar para ou para o seu futuro eu, quem pode esquecer por que você coloca um determinado comando lá.

Você também pode querer adicionar o comando "ECHO OFF" ao início do arquivo. Isso geralmente é adicionado ao início da maioria dos arquivos em lote. Quando você faz isso, os próprios comandos não serão impressos no prompt de comando, mas os resultados serão. Por exemplo, você verá os detalhes da conexão de rede, mas não a linha "ipconfig / all".A maioria das pessoas não gosta de ver os comandos, então isso pode limpar a saída.

Então, veja o que isso pode parecer:

: : Este arquivo em lote verifica problemas de conexão de rede. ECHO OFF: : Exibir detalhes da conexão de rede ipconfig / all: : Verifique se Google.com está acessível ping google.com: : Execute uma traceroute para verificar a rota para Google.com tracert google.com PAUSE

Existem outras direções para as quais você poderia ircom um arquivo em lote como este. Por exemplo, você pode querer que seu script de lote execute os comandos acima e, em seguida, despeje a saída para um arquivo de texto que você pode ver mais tarde. Para fazer isso, você usaria o & gt; & gt;operador após cada comando para adicionar sua saída ao arquivo de texto. Como nós vamos ler a saída do arquivo de texto de qualquer maneira, podemos omitir o comando PAUSE.

: : Este arquivo em lote verifica problemas de conexão de rede: : e salva a saída para um arquivo. txt. ECHO OFF: : Exibir detalhes de conexão de rede ipconfig / all & gt; & gt;results.txt: : Verifique se o Google.com está acessível ping google.com & gt; & gt;results.txt: : Execute um traceroute para verificar a rota para Google.com tracert google.com & gt; & gt;results.txt

Depois de executar o script acima, você encontrará um arquivo chamado results.txt na mesma pasta que o arquivo em lote com a saída dos comandos. A janela do prompt de comando será fechada automaticamente assim que o arquivo em lote for executado.

O exemplo em que estamos usando acima baseia-se na impressão de informações no prompt de comando para que o usuário possa lê-lo. No entanto, muitos arquivos em lote são projetados para ser executados de forma não interativa. Por exemplo, você poderia ter um arquivo em lote que exclui vários arquivos ou diretórios sempre que você clicar duas vezes nele. Você precisaria usar o comando del para excluir arquivos ou o comando deltree para excluir diretórios. Lembre-se, você está apenas usando os mesmos comandos que você executou em uma janela do Prompt de Comando.

Fundamentalmente, esse é o ponto da maioria dos arquivos em lote - apenas executando alguns comandos um após o outro. No entanto, os arquivos em lote podem realmente ser significativamente mais complexos do que isso. Por exemplo, você pode usar instruções "IF" junto com o comando "GOTO" para verificar o valor de algo e, em seguida, pular para diferentes linhas, dependendo do resultado. Isso é mais como escrever um programa pequeno real do que um script rápido e sujo. Essa é uma das razões pelas quais os arquivos. bat às vezes são chamados de "programas em lote". Se você quer fazer algo mais complexo, você encontrará muitos guias para fazer coisas específicas com a programação em lote on-line. Mas agora, você conhece os conceitos básicos de como jogar um simples juntos.