Batch ou
arquivo de lote (também conhecidos por
.bat) é um
arquivo de computador utilizado para automatizar tarefas. É regularmente confundido com o modo de
processamento 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.
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.