Antes de tudo, indicar o porquê os processos são chamados batch. A razão por ele se chamar bat é porque no ms-dos requere-se como máximo três letras na extensão e por tanto os arquivos tem a extensão .bat
O que se pode fazer com eles?
Pode fazer de forma automatizada tudo aquilo que se pode fazer no console do ms-dos.
Como faça um arquivo bat?
Coloque em texto. Apenas decidir onde colocar, pode colocá-lo no bloco de notas ou algum editor ascii.
Ao guardá-los devem ter a notação de nomes próprios do ms-dos. Este nome com no máximo 8 letras (espaço e \ não são permitidos) logo um ponto e a extensão que neste caso é obrigatoriamente bat.
Como posso selecionar vários arquivos;
Para ele tem que se levar em conta os nomes dos arquivos, devem cumprir a notação do ms-dos (8 letras sem espaço como máximo, logo um ponto e três letras como máximo da extensão. Pode se utilizar os comandos;
*Equivale a vários caracteres.
?Equivale a apenas um caracter.
Exemplos
comando *.doc -> selecionar todos os arquivos que tenham a extensão doc.
comando a*.doc -> selecionar todos os arquivos que comecem por a e tenha a extensão doc.
comando a*b.doc -> selecionar todos os arquivos que comecem por a, acabem por b e tenham a extensão doc.
comando *mao*.doc -> selecionar todos os arquivos que contenham ‘mao’ e tenham a extensão doc.
comando c?mao.doc -> selecionar todos os arquivos que contenham ‘c’, logo um carater qualquer e logo ‘mao’. Deve ter tambem a extensão doc.
comando c?b*.* -> selecionar todos os arquivos que comecem por ‘c’, tenham um caracter qualquer, logo um b e qualquer extensão.
comando *.b?t -> selecionar todos os arquivos que tenham a extensão que comece por b, logo um caracter qualquer e logo um t.
Quem são as trajetórias e os patchs;
A trajetória é o nome completo de um arquivo e indica a situação exata de um arquivo e seu nome.
Se digo que o arquivo se chama arquivo.txt indico seu nome, mas nada mais. Se supoe que se encontra no diretório atual.
Se digo c:\arquivo.txt indico que o arquivo que me interesse se chama arquivo.txt e se encontra no diretório ráiz de C.
Dado que no ms-dos nao se admite nomes grandes ( mais de 8 letras ) nem espaço, quando quero utilizar o nome do windows em ms-dos devo saber que este será reconvertido em seu nome curto. Este se obtem os seis primeiros carácteres válidos do nome, logo o sinal ~ (alt 126) e logo um número.
Que comandos podemos utilizar;
Comandos;
Aqui estão alguns comandos utilizados em batch.
ECHO [mensagem ou variável]
Escreve na tela
ECHO OFF
Desativa as informações e confirmações feitas pelo sistema. Como “C:>”, “Tem certeza que deseja fazer tal?”….
ECHO ON
Ativa as informações e confirmações do sistema.
ECHO.
Pula 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 caractéres, positivo/negativo entre outros. Não podem ter acento e devem começar com letra). Para chamar a variável posteriormente basta coloca-la entre “%”.
Por exemplo:
SET nome=Storm
ECHO O nome dele é %nome%
:nomedolink
Nomeia um ponto do arquivo de lote permitindo avançar ou voltar a execução apartir daquele ponto.
CLS
Esse comando limpa toda a tela. CLear Screen.
@[Comando]
Desativa as informações e confirmações feitas pelo sistema apenas para esta linha.
CODE
IF [condição] (
[ação]
) ELSE (
[ação2]
)
Esse é um comando condicional. “Se condição faça ação, senão faça ação2?.
Por exemplo:
CODE
@ECHO OFF
SET nome=Storm
IF “%nome%”==”Storm” (
ECHO Ola Storm!
) ELSE (
ECHO Ola %nome%!
)
GOTO [ponto]
Avança ou volta a execução para um ponto do arquivo de lote.
FOR /L %%variavel IN (inicio,incremento,fim) DO comando [parâmetro]
Repete um comando varias vezes fazendo incrementações até o fim ser atingido.
/L, é uma opção do comando FOR que faz as incrementações.
%%variavel, é o nome da variável que vai ser incrementada.
inicio, é o valor de inicio da variável que será incrementada.
incremento, número que será somado a cada incrementaçã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.