Escolar Documentos
Profissional Documentos
Cultura Documentos
cmd)
Pesquisa personalizada
Bom fiz esse tópico para facilitar a vida de quem ainda tem problema com o comando "for",Para ser
sincero eu também não sabia usar direito ele ate umas duas semanas atras, mais ai eu desvendei o
mistério e irei compartilhar a formula secreta com vocês,bom o grande truque quando vai se
aprender um comando tão complexo quanto o for está na aula experimental isso é você vendo com
os seus próprios olhos o que cada complemento faz.
Obs -Usarei exemplos daqui do forum no tutorial e não estranhem se aparecer uma frase idêntica a
do boss pois não da pra simplificar mais, então vamos começar.
PÁGINAS RECOMENDADAS
CÓDIGO:
TAGS
CÓDIGO:
Antes que você tenha essa duvida (Não importa a varável %%a %%b %%c tudo vai dar no mesmo) Comando IF
If If O comando realiza processamento
Esses exemplos foi só pra dar uma pequena amostra do que este comando e capaz mais isso não e condicional em programas em lotes. Sintaxe
if [ not ] errorlevel Número Comando [ ...
nem o começo agora vamos ver os complementos para utilização do "for".
Comandos
Aqui vai ter alguns comandos
> Opções para serem utilizadas antes dos "complementos"
basicos e avançados: .:: TXT ::.
[/L] - Serve para especificar um loop "for /l %%a in (1,1,100) do (echo %%a)"Exemplos +
OU TABELA DETALHADA Para
Explicação
obter mais informações sobre
[/D] - Serve para listar diretórios "for /d %%a in (*) do (echo %%a)" -------->Exemplos +
um com...
Explicação
[/R] - E um Incremento para a opção '/d' "for /d /r %%a in (*) do (echo %%a)"Exemplos + Enviar e-mail pelo prompt
Explicação
veja: ex.: start mailto:r.ml10@mail.com?
[/F] - Serve como um ultilitario avançado de textos "tem muitos exemplos" subject=TESTE^&cc=ROMULO^&body=OI,Thi
s%20is%20an%20automatically%20created
> Opções no "Conjunto" %20message. 1....
[""] - Especifica uma cadeia de caracteres "for /f "tokens=*" %%a in ("%Date%") do (echo %%a)"
batchscript.blogspot.com/2012/12/aprenda-o-for-de-uma-vez-por-todas.html 1/6
05/08/2019 Aprenda o FOR de uma vez por todas (extra fácil) | Batch Script (.bat .cmd)
[' '] - Especifica um comando "for /f "tokens=*" %%a in ('type Arquvio.txt') do (echo %%a)"
Tudo sobre Batch (tutorial básico)
[ ] - Especifica conjunto de arquivos "for %%a in (Ola.txt Final.txt) do (del /s /f /q %%a)"
AUTOR: Osmar do fórum BatchSatti
Introdução Antes de tudo, indicar o porquê
> Complementos na opção /f
os processos são chamados batch. A razão
por ele se chamar ba...
Atenção ! Esses comandos so funcionam se estiverem acompanhados da opção '/F' & Antes de ver os
"complementos" (goto teste)
TOTAL DE VISUALIZAÇÕES !
[tokens] Limita visualização de camadas (goto tokens)
[delims] Especifica o caracter delimitador (goto Delims)
[skip] Especifica a quantidade de linhas para serem puladas (goto Skip) 1 2 4 8 5 9
[eol] Especifica o caractere para ser ignorado... (goto eol)
[usebackq] Muda a forma de se interpretar o conjunto (goto userbackq)
goto Sets
:teste
bom e meio dificil explicar esses complementos mais para melhor entendimento vamos precisar disso
CÓDIGO:
:tokens
Veja você mesmo o uso desse comando
#PodeUsar
CÓDIGO:
Linha1
Linha2
Linha3
e se colocarmos
CÓDIGO:
o resultado seria
CÓDIGO:
Parte1
Parte2
Parte3
Linha1 Parte1
Linha2 Parte2
Linha3 Parte3
Percebam que no (conjunto de ação) eu coloquei "%%a" e "%%b" pois se ficasse só o "%%a" não
apareceria a segunda coluna de linhas, coloquei o "%%b" por que o "B" e o numero afrente do "A",
tipo se a variável fosse "%%1" ficaria "%%1" "%%2".
Poderíamos colocar
CÓDIGO:
isso acarretaria em
CÓDIGO:
batchscript.blogspot.com/2012/12/aprenda-o-for-de-uma-vez-por-todas.html 2/6
05/08/2019 Aprenda o FOR de uma vez por todas (extra fácil) | Batch Script (.bat .cmd)
Parte1 Linha1 Teste1
Parte2 Linha2 Teste2
Parte3 Linha3 Teste3
Também da pra encurtar o processo tipo você quer colocar o "tokens" de 1 a 9 envez de colocar
1,2,3... vc pode usar da seguinte maneira
CÓDIGO:
for /f "tokens=1-9" %%a in (Arquivo.txt) do( echo %%a %%b %%c ...)
então acho que já da pra sacar pra que serve este complemento né ?
goto:eof
:delims
ele especifica o caractere delimitador (entre as palavras)
exemplo:
você tem o seguinte código chamado "teste.txt"
CÓDIGO:
Linha1-Parte1-Teste1
Linha2-Parte2-Teste2
Linha3-Parte3-Teste3
E quer separar cada camada, se usar só o "tokens" não ira pegar simplesmente pelo fato de as
palavras estarem uma em contato com a outra tipo você colocaria
CÓDIGO:
Iria aparecer a mesma coisa do código original,agora usando o "delims" tipo isso aqui
CÓDIGO:
acarretaria em
CÓDIGO:
for /f "tokens=1,2,3 delims=/" %%a in ("%date%") do (echo Ano - %%c Mes - %%b Dia - %%a)
Um detalhe importante de ser ressaltado e que o caractere delims não foi igual ao do exemplo
passado eu usei o '/' por que na data ele é utilizado para separar dia més e ano '10/08/2012'
goto:eof
:skip
No comando skip usaremos a #PodeUsar
bom ele serve para pular linhas em sequencias veja
CÓDIGO:
:eol
Diferente do 'skip' o 'eol' serve para ignorar linhas com caracteres especificados por ele e não importa
se estejam em ordem ou não. olha isso na pratica.
digamos que você tenha um arquivo chamado "texto.txt" com isso dentro
CÓDIGO:
boss-head
real madrid
baby
o melhor
black
time
e quer pular somente as linhas que tenham o caractere 'b' no inicio da frase
você colocaria esse comando
batchscript.blogspot.com/2012/12/aprenda-o-for-de-uma-vez-por-todas.html 3/6
05/08/2019 Aprenda o FOR de uma vez por todas (extra fácil) | Batch Script (.bat .cmd)
CÓDIGO:
real madrid
o melhor
time
:usebackq
Esse comando serve para interpretar o conjunto de outro modo.
exemplo:Você tem um arquivo chamado de 'Ola galera.txt' e queria visualiza-lo no for se você colocar
assim
CÓDIGO:
O prompt interpretaria como cadeia de caracteres simplesmente por que tem as [""] e iria mostrar
"Ola galera.txt" na tela e não o conteúdo do arquivo então para mudar isso usa-se o "usebackq"
ficando assim o código
CÓDIGO:
Obs - Tive que colocar aspas no conjunto por que o nome tem espaço e e a mesma coisa tipo quando
você copia um arquivo se contiver espaços no meio do nome tem que colocar [""].
goto:eof
:Sets
* Alguns detalhes importantes
1 - Não importa a varável %%a %%b %%c tudo vai dar no mesmo
2 - No conjunto de ações não precisa ter () eu só coloco por organização
3 - O '%%Var' só e interpretado quando e salvo como ".bat" no prompt de comando utilize o '%Var'
4 - A grande sacada do for e a parte do 'delims' e 'tokens' aprendeu isso já e 70 % concluído
5 - O for ira economizar dezenas de linhas no seu código quando você sacar ele direito
6 - Você pode ver alguns exemplos do for clicando aqui
goto End
:End
Bom com isso concluímos o tutorial tenham a total certeza que tentei ser o mais claro possível
Aos que não entenderam pode me mandar a sua duvida em uma MP e tentearei soluciona-la
Aos Mods e as membros em geral podem me falar se me equivoquei em algum argumento ou coisas
do tipo
A todos um abraço de Agamenon e fiquem com DEUS.
Att. Hemnon
11 comentários:
Hey.. sabe eu estava testando algumas novas TAGS do Google e vim parar aqui.. eu sou o
Agamenon do texto aí em cima, fui eu que escrevi este tutorial, quei até feliz em ver que você
postou aqui no seu BLOG, na verdade z ele para ajudar as pessoas a entender o "tão temido for" e
tirar algumas dúvidas. E é isso aí cara quanto mais pessoas você poder atrair para a programação
melhor, e se for especi camente pro Batch-Script melhor ainda.
PS: Sabe quei realmente contente, o que me deixou mais ainda foi o %autor% ter a decência de
colocar os devidos créditos à mim, muitos postariam por aí como seus e levariam toda a "glória" (sei
que é só um tutorial mas a lógica é a mesma, ninguém gosta de ser plagiado e copiado). Então ao
%autor% que divulgue o Batch-Script assim como eu, leve às pessoas esse novo mundo, que sem
dúvida nenhuma é apaixonante.
batchscript.blogspot.com/2012/12/aprenda-o-for-de-uma-vez-por-todas.html 4/6
05/08/2019 Aprenda o FOR de uma vez por todas (extra fácil) | Batch Script (.bat .cmd)
PS: Sabe o Batch-Satti é um ótimo fórum, sem dúvida nenhuma é o melhor daqui do brasil(quem
sabe até da américa latina), aprendi muito lá e qualquer script que eu crio e posto por aí eu deixo
créditos ao site e divulgo.
Att. Hmenon
Responder
Respostas
Valeu pelo comentário .. foi um Ctrl+c ctrl+v rs, mas sempre que tiro algo de lá ou outro
lugar coloco o autor e fonte.
Todo conteúdo aqui disponível é encontrado na internet, só algumas coisas eu z...
:vlw
T+
goto vlw
Responder
Cara Daew
Parabens pelo seu blog
eu criei um Programa em .BAT
Queria saber se vc pode me dar uma
Força e divulgar ele aew
PendriveCopy
dai te mando o Link de videos
Responder
Respostas
Posso sim.
Responder
Responder
Valeu CARA PARABENS era o que estava precisando para desenvolver meu BATinho, Obrigado.
Responder
Responder
Responder Excluir
Ótimo esse ensinamento. Parabéns! Gostaria muito de uma ajuda. Quer saber como pegar um
arquivo com uma extenção, ex: "txt" em uma pasta e jogar em outra. Tipo isso, mas não funcionou
com txt dentro do for. só quando coloco "doc.txt". Quero localizar por extenção e enviar. for %x in
(doc.txt) do cd C:\Users\PC-host\Documents | dir /s /b %x | robocopy C:\Users\PC-
host\Documents\%x C:\Users\PC-host\Downloads\%x
Responder
batchscript.blogspot.com/2012/12/aprenda-o-for-de-uma-vez-por-todas.html 5/6
05/08/2019 Aprenda o FOR de uma vez por todas (extra fácil) | Batch Script (.bat .cmd)
Exemplo:
DAC005789.JPG
DBX46956565.JPG
DXX78988.JPG
DAC005789_tn.JPG
DBX46956565_tn.JPG
DXX78988_tn.JPG
Obrigado
Responder
Responder
IMPORTANTE
Prejuízo.
batchscript.blogspot.com/2012/12/aprenda-o-for-de-uma-vez-por-todas.html 6/6