Como escrever um script em lote no Windows

Índice:

Como escrever um script em lote no Windows
Como escrever um script em lote no Windows

Vídeo: Como escrever um script em lote no Windows

Vídeo: Como escrever um script em lote no Windows
Vídeo: Como acessar sites offline no Google Chrome - ApksPlay - YouTube 2024, Maio
Anonim
Você sabe como usar o prompt de comando? Se você fizer isso, você pode escrever um arquivo em lotes. Em sua forma mais simples, um arquivo em lotes (ou script em lotes) é uma lista de vários comandos que são executados quando você clica duas vezes no arquivo. Os arquivos em lote vão até o DOS, mas ainda funcionam nas versões modernas do Windows.
Você sabe como usar o prompt de comando? Se você fizer isso, você pode escrever um arquivo em lotes. Em sua forma mais simples, um arquivo em lotes (ou script em lotes) é uma lista de vários comandos que são executados quando você clica duas vezes no arquivo. Os arquivos em lote vão até o DOS, mas ainda funcionam nas versões modernas do Windows.

Os scripts do 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.

Noções básicas sobre arquivos em lote

Um arquivo de lote é simplesmente um arquivo de texto salvo com a extensão de arquivo.bat. Você pode escrever um usando o Bloco de Notas 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 em lote simples. Primeiro, abra o Bloco de Notas. Digite as seguintes linhas:

ECHO OFF ECHO Hello World PAUSE

Em seguida, salve o arquivo clicando em Arquivo> Salvar. Dê a ele qualquer nome que desejar, mas substitua a extensão de arquivo.txt padrão pela extensão.bat.
Em seguida, salve o arquivo clicando em Arquivo> Salvar. Dê a ele qualquer nome que desejar, mas substitua a extensão de arquivo.txt padrão pela extensão.bat.

Por exemplo, você pode querer nomeá-lo

hello_world.bat

Agora você tem um arquivo em lotes com a extensão de arquivo.bat. Clique duas vezes para executá-lo. Esse arquivo em lote específico desativa o ECHO (o que limpa a saída ocultando os comandos de serem impressos no prompt, imprime o texto “Hello World” na tela e, em seguida, espera que você pressione uma tecla antes que ela termine.
Agora você tem um arquivo em lotes com a extensão de arquivo.bat. Clique duas vezes para executá-lo. Esse arquivo em lote específico desativa o ECHO (o que limpa a saída ocultando os comandos de serem impressos no prompt, imprime o texto “Hello World” na tela e, em seguida, espera que você pressione uma tecla antes que ela termine.

Se você não adicionou

PAUSE

para o arquivo, o arquivo em lotes simplesmente executaria seus comandos e depois fecharia automaticamente. Nesse caso, ele imprimiria “Hello World” na janela e, em seguida, fecharia imediatamente a janela do prompt de comando. Quando você quer executar rapidamente comandos sem ver a saída, você pode omitir isso. Se você estiver executando vários comandos, poderá colocar o

PAUSE

comando entre eles.

Image
Image

Escrevendo um arquivo de lote mais complexo

É fundamental criar um arquivo em lotes. A única coisa que você precisa mudar é o que você digita no Bloco de Notas. Para executar vários comandos, você digita cada um em sua própria linha e o arquivo em lote executará cada um em ordem.

Por exemplo, digamos que queremos gravar um arquivo em lotes que execute vários comandos de diagnóstico de rede. Nós podemos querer correr

ipconfig /all

para ver informações de rede,

ping google.com

para ver se os servidores do Google estão respondendo e

tracert google.com

para executar um traceroute no google.com e ver se há algum problema no caminho.

Na forma mais básica, poderíamos simplesmente colocar todos esses comandos em um arquivo de lote, um após o outro, da seguinte forma:

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

Quando executamos esse arquivo, só vemos a saída de cada comando logo após o outro. Mas isso não é necessariamente a maneira ideal de escrever um arquivo em lotes.

Por exemplo, você pode querer adicionar linhas de comentário. Qualquer linha que comece com um
Por exemplo, você pode querer adicionar linhas de comentário. Qualquer linha que comece com um

::

é uma linha de comentário e não será executada. Isso os torna uma maneira útil de explicar o que está acontecendo no arquivo para qualquer um que você possa fornecê-lo - ou para o seu futuro, que pode esquecer por que você colocou um certo 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ê fizer isso, os comandos em si 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 se importa em ver os comandos, portanto, isso pode limpar a saída.

Então, aqui está o que isso pode parecer:

:: This batch file checks for network connection problems. ECHO OFF:: View network connection details ipconfig /all:: Check if Google.com is reachable ping google.com:: Run a traceroute to check the route to Google.com tracert google.com PAUSE

Existem outras direções que você poderia seguir com um arquivo em lote como este. Por exemplo, você pode querer que seu script em lote execute os comandos acima e, em seguida, despeje a saída em um arquivo de texto que você possa ver mais tarde. Para fazer isso, você usaria o
Existem outras direções que você poderia seguir com um arquivo em lote como este. Por exemplo, você pode querer que seu script em lote execute os comandos acima e, em seguida, despeje a saída em um arquivo de texto que você possa ver mais tarde. Para fazer isso, você usaria o

>>

operador após cada comando para anexar sua saída ao arquivo de texto. Como vamos ler a saída do arquivo de texto de qualquer maneira, podemos omitir

PAUSE

comando.

:: This batch file checks for network connection problems:: and saves the output to a.txt file. ECHO OFF:: View network connection details ipconfig /all >> results.txt:: Check if Google.com is reachable ping google.com >> results.txt:: Run a traceroute to check the route to Google.com tracert google.com >> results.txt

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

O exemplo que usamos 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 serem executados de forma não interativa. Por exemplo, você pode ter um arquivo em lotes que exclua vários arquivos ou diretórios sempre que clicar duas vezes nele. Você só precisa usar o
O exemplo que usamos 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 serem executados de forma não interativa. Por exemplo, você pode ter um arquivo em lotes que exclua vários arquivos ou diretórios sempre que clicar duas vezes nele. Você só precisa usar o

del

comando para excluir arquivos ou o

deltree

comando para excluir diretórios. Lembre-se de que você está usando apenas os mesmos comandos que executaria 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, arquivos em lote podem ser significativamente mais complexos 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 linhas diferentes, dependendo do resultado. Isto é mais como escrever um pequeno programa 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ê quiser fazer algo mais complexo, encontrará muitos guias para fazer coisas específicas com a programação em lote on-line. Mas agora, você sabe o básico de como juntar um simples.

Recomendado: