Batch ou arquivo de lote (também conhecidos por .bat) é um arquivo de computador utilizado para automatizar tarefas. É regularmente confundido com o modo deprocessamento de dados no qual os mesmos são processados em grupos, ou lotes, através de uma rotina agendada. O batch neste caso, nada mais é um conjunto de comandos rodados sequencialmente. Podemos compará-lo, a grosso modo, aos scripts do Unix.
Criado para o MS-DOS, o batch foi utilizado para preparar o sistema operacional à execução de outros programas. Por exemplo: o EMM386 que habilitava o uso da memória expandida (além dos 640K). Alguns técnicos de informática utilizam deste recurso para facilitar a instalação do sistema operacional da Microsoft (Windows) utilizando um disco de boot.
Este tipo de arquivo pode ser muito perigoso, pois é capaz de danificar o sistema operacional sem o conhecimento do usuário, enchendo o disco rígido, desconfigurando a inicialização do sistema, dentre outros males. Por isso, é recomendado executar jobs batch conhecidos. No Windows, estes arquivos podem ser facilmente editados clicando com o botão direito do mouse e selecionando Editar. Você pode fazer um utilizando apenas o bloco de notas do windows. No arquivo, cada linha é um comando diferente do MS-DOS. Para funcionar é necessário salvar o arquivo com a extensão .bat (Por exemplo: nome do arquivo.bat).
Comandos
Aqui estão, alguns comandos utilizados em jobs batch. Se você tiver dúvida de algum digite no Prompt de comando: comando/?. Outro modo de vê-los é digitando
help
no Prompt de Comando.ECHO [mensagem ou variável]
Escreve na tela
- ECHO OFF
Desactiva as informações e confirmações feitas pelo sistema. Como "C:>", "Tem a certeza que deseja fazer tal?"...
- ECHO ON
Activa as informações e confirmações do sistema.
- ECHO.
Salta uma linha
SET variavel=valor
Cria ou modifica uma variável (espaço reservado temporariamente na memória RAM para guardar algumas informações númericas, de caracteres, positivo/negativo entre outros. Não podem ter acento e devem começar com letra). Para chamar a variável posteriormente basta colocá-la entre "%". Por exemplo:
SET nome=João ECHO O nome dele é %nome%
:nomedolink
Nomeia um ponto do arquivo de lote permitindo avançar ou voltar à execução a partir daquele ponto.
- CLS
Este comando limpa todo o ecrã. CLear Screen.
@[Comando]
Desactiva as informações e confirmações feitas pelo sistema apenas para esta linha.
IF [condição] ( [acção] ) ELSE ( [acção2] )
Este é um comando condicional. "Se condição fazer acção, senão fazer acção2".
- Por exemplo
@ECHO OFF SET nome=Ana IF "%nome%"=="Ana" ( ECHO Oi Aninha! ) ELSE ( ECHO Oi %nome%! )
GOTO [ponto]
Avança ou volta a execução para um ponto do arquivo de lote.
FOR /L %%variavel IN (início,incremento,fim) DO comando [parâmetro]
Repete um comando várias vezes fazendo incrementações até o fim ser atingido.
- /L, é uma opção do comando FOR que faz as iteracções
- %%variavel, é o nome da variável que vai ser incrementada
- início, é o valor de início da variável que será incrementada
- incremento, número que será somado a cada iteracção
- fim, a repetição irá acabar quando o valor da variável atingir este valor
- comando, um comando que será repetido
- [parâmetro], o parâmetro do comando que será repetido
- Por exemplo
@ECHO OFF FOR /L %%a IN (1,1,5) DO ECHO O valor de A é %%a
- PAUSE
Faz uma pausa e só volta quando o utilizador premir alguma tecla do teclado.
REM [comentário]
Este comando não faz absolutamente nada. Ele é utilizado para inserir comentários nos arquivos.
- Todos aqui listados são comandos de MS-DOS que foram criados especificamente para arquivos de lote. Se você precisar de mais detalhes sobre cada um deles basta digitar no MS-DOS (ou no prompt de comando do Windows) help Todos comandos de MS-DOS também entram nesta lista incluindo chamadas de outros programas para este sistema.