InterRedes
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.



 
InícioÚltimas imagensRegistrarEntrar

 

 Tutorial de Batch em DOS

Ir para baixo 
AutorMensagem
i00nsu
Admin
i00nsu


Número de Mensagens : 19
Idade : 44
Localização : somewhere in time
Data de inscrição : 27/01/2009

Tutorial de Batch em DOS Empty
MensagemAssunto: Tutorial de Batch em DOS   Tutorial de Batch em DOS Icon_minitimeQui Fev 05, 2009 6:44 pm

1.20

A linha de comandos DOS oferece-nos uma lista de vastas opções.
Eu vou estudar e fazer um tutorial sobre o DOS, e as suas potencialidades.
Normalmente o scripts de DOS, mais conhecidos como ficheiros .BAT, são lista de regras/comandos que são executados um a um e nos oferece uma maior rentabilidade e maior precisão.

Nesta primeira lição vamos explorar o comando ECHO.

Já em Bash Unix, echo tem a mesma função. Serve para enviar uma mensagem.

Por exemplo: abrindo a linha de comandos, e escrevendo > echo Olá Mundo Cruel, a consola irá reverter "Olá Mundo Cruel".

Este comando tem várias opções. Uma que me agradou logo desde o início foi o facto de poder retirar o caminho raiz que nos acompanha por defeito. >> c:\Documents and Settings\username\ _
Por vezes estamos num directório tão grande que escrever alguma coisa torna-se desagradável.
Para retirar-mos o caminho raiz basta escrever na consola >> echo off
Assim a consola está mais limpa.

Convém dizer que é bom que se use o notepad para fazer ficheiros .bat, nas opções de salvar, escolher todos os ficheiros e dar-lhe a extensão .BAT

Para criar-mos o nosso ficheiro que nos diz "olá mundo Cruel" podemos então abrir o notepad da seguinte forma:
Código:

start /min notepad om.bat
start >> executa uma aplicação
/min >> opção para minimizar a janela
notepad >> aplicação que vem com o windows
om.bat >> ficheiro criado para escrever-mos o código.

ALT+TAB e temos o nosso notepad.exe pronto a receber instruções.
Vamos escrever então a nossa mensagem para o mundo
Na primeira linha escreva
Código:

echo Olá Mundo Cruel
Em seguida salvamos o ficheiro CTRL+G e na consola escrevemos om.bat e batemos Enter.

Como podem ver o comando foi executado, mas o comando em si "echo Olá Mundo Cruel" também está à mostra.

Para resolver-mos isto, basta então acrescentar no início da linha do nosso batch script o símbolo @ o que ficará >>
Código:

@echo ola mundo cruel
Assim sendo para executarmos um lista de frases podemos então fazer >>
Código:

@ECHO OFF
echo o mundo está ali fora à tua espera
echo tu podes ficar em casa a ve-lo na internet
echo ou podes sempre sair e vive-lo como a maioria dos homens/mulheres
ECHO.
O comando Echo. serve para acrescentar uma linha em branco.

O executável que corre os comandos BAT é o CMD.exe que está em C:\WiNDOWS\SYSTEM32\cmd.exe
Nesta caso é a própria consola DOS.

Variáveis :

Tal como em UNIX as variáveis escrevem-se em letras MAIÚSCULAS
Exemplo:
Código:

C:\> set
winbootdir=C:\WINDOWS
COMSPEC=C:\WINDOWS\COMMAND.COM
PATH=C:\WINDOWS;C:\WINDOWS\COMMAND
TEMP=C:\WINDOWS\TEMP
PROMPT=$p$g
windir=C:\WINDOWS
CMDLINE=start /min notepad HW.BAT
SRC=C:\BKTEST
TASK=Build fresh test folder

c:\
Para tirar um screenshot da linha de comandos basta fazer Shift+Printsreen Wink
Ir para o topo Ir para baixo
i00nsu
Admin
i00nsu


Número de Mensagens : 19
Idade : 44
Localização : somewhere in time
Data de inscrição : 27/01/2009

Tutorial de Batch em DOS Empty
MensagemAssunto: Re: Tutorial de Batch em DOS   Tutorial de Batch em DOS Icon_minitimeQui Fev 05, 2009 6:45 pm

2.20

Explorador do Windows vs CMD.EXE

O nosso Windows teve uma evolução clara no ambiente gráfico, pois existem algumas limitações quando usado no modo consola. Além de ser mais fácil usar o Explorador do Windows, também é mais prático em várias situações. De qualquer modo é sempre bom ter-mos consciência de quais as limitações do DOS.

Modo de Trabalho
Explorer.exe > Ambiente gráfico
cmd.exe > Ambiente de texto

Executar um programa
explorer.exe > Duplo Clique
cmd.exe > No caso de ser um programa do Windows (Notepad.exe) escrever o nome do programa em qualquer directoria. Caso seja um programa instalado por nós, ir à directoria do programa e escrever o nome do executavel completo. Exemplo: cd C:\Programas\Notepad++\ e dentro do diretório escrever notepad++.exe para o mesmo abrir.

Copiar, Mover, Apagar
explorer.exe > Com o botão direito do rato, arrastar e escolher copiar ou mover. Para apagar seleccione o ficheiro e carregue em delete para o mesmo ir para a reciclagem. Caso queira apaga-lo para sempre, antes de premir delete, carregue em Shift continuamente.
cmd.exe > Ir à directoria que tem o ficheiro que desejamos apagar e usar "del ficheiro.txt". Para copiar é necessário usar o caminho completo. Exemplo: cp c:\exemplo.txt c:\Documents and Settings\user\My Documents\Ficheiros de texto\

Child Shells


Quando abrimos o explorador do Windows, podemos sempre abrir outra pasta numa nova janela.
Em Linux/Unix existe uma aplicação que tem mais ou menos o mesmo efeito. Posso afirmar que em Linux essa aplicação (screen) é bem mais completa, mas afinal em Windows também existe algo parecido e que neste caso tem uma razão especial.

Na Lição passada acabamos por falar muito por alto em variáveis.
Agora vou expor um pouco mais esse assunto dando alguns exemplos práticos:

Código:

c:\DOS> set aqui=Estamos na shell principal
c:\DOS> echo. %aqui%
Estamos na shell principal

c:\DOS>

Em seguida fazemos o comando command /k.
Como podemos observar estamos agora num caminho abreviado se assim se pode chamar.
Se antes estavamos em C:\Documents and Settings\user\ agora estamos em C:\Docume~1\user\
A opção /k dá ordem que o processo seja kontinuo. Quase poderemos dizer que o processo está em Background. Ao dar-mos a ordem de saída voltamos para o caminho principal ou para a Main Shell, sabendo que estivemos numa shell secundária.

Comando prompt

O comando prompt é usado para mudar a aparência do prompt da shell.
Lembre-se que as variáveis normais já prédefinidas são $p$g. O $p indica a drive que estamos (C:\) e o caminho/directório (Windows\system32) e o $g define o símbolo >.
Podemos então mudar o nosso prompt por exemplo para:
Código:
c:\DOS>prompt shell $p$g
O resultado será
Código:

shell C:\DOS>
shell C:\DOS>
shell C:\DOS>_
Depois saia >> exit >> C:\DOS>

Agora juntemos os dois comandos abordados:
Código:
C:\DOS>command /k prompt shell $p$g
shell C:\DOS>

Existem dois tipos de Child Shells que é preciso conhecermos.
1. Return-code shell
2. Debug-mode shell

1:Return-code
Sabendo como as usar, ajuda-nos a escrever e a fazer debug em scripts Batch.
Grande parte dos scripts que escrevemos enviam-nos informações sobre o mode que o mesmo foi executado "Return-code", também conhecido como ERRORLEVEL. Este código guardado na memória tem o tamanho de um byte quando o programa/script acaba de ser exexutado. Pode ter um valor entre o 0[/] e os [b]255. Não há um regra geral sobre este tipo de erros, mas o normalmente ele aparece das seguintes formas:

0 >> O programa/script informa-nos que está tudo OK ou nada para reportar.
1 >> Informação útil do programa/script (especifico para cada programa)
255 >> O programa/script informa-nos de um erro de condição.

Vamos então mudar a nossa shell para uma child shell de forma a que nos lembremos que estamos numa shell Return-code
Código:

C:\DOS>prompt RCode $p$g
RCode C:\DOS>_

Agora tentamos usar a aplicação scandskw << ScanDisk
Código:

RCode C:\DOS>start /w scandskw
Return code (ERRORLEVEL): 254

Usamos a opção /w para fazer com que a aplicação só terminasse de trabalhar quando terminasse todo o processo que estava a fazer.

2: Debug-mode shell

Debuging code é o mesmo que ler o código linha a linha.
Esta child Shell a única coisa que nos irá apresentar é o código que escrevemos.
Existe aplicações que detectam a linha que tem um ou mais erros, mas neste caso não serve para nada.

Mesmo assim aqui fica a forma de o fazer em DOS:

Código:

command /y /c script.bat

Very Happy
Ir para o topo Ir para baixo
 
Tutorial de Batch em DOS
Ir para o topo 
Página 1 de 1
 Tópicos semelhantes
-
» DOS Batch tutorial
» Tutorial basico MySQL
» Tutorial basico de gestão de permissoes de directivas de grupo do Windows.

Permissões neste sub-fórumNão podes responder a tópicos
InterRedes :: Programação :: bash-
Ir para: