Usuário com melhor resposta
Problema com FOR em script .BAT

Pergunta
-
Bom dia pessoal,
Eu preciso de ajuda com esse script...
Tenho um for para pegar um arquivo com lista de máquinas, e entao entrar no laço e executar...
O que ocorre é que quando ele faz a 1 máquina e termina ela, o script fecha, ele nao volta pro início do for e executa a proxima maquina...
se eu fecho o for com o ")" logo após o echo !machine! ele dá echo com as maquinas que estao dentro do machines.txt
entao, nao sei ainda pq ele está saindo... alguém poderia me ajudar? (mesmo com o pause no final ele nao pausa)
obrigado!!
@echo off set server=\server01\share dir /b /o %server% |find "i32" |more +2 > 32.txt FOR /F "tokens=*" %%A in (32.txt) do SET file32=%%A dir /b /o %server% |find "i64" |more +2 > 64.txt FOR /F "tokens=*" %%B in (64.txt) do SET file64=%%B setlocal EnableDelayedExpansion for /f "tokens=*" %%C in (machines.txt) do ( set "machine=%%C" echo !machine! if exist "\!machine!\c$\Program Files (x86)" goto 64bits goto goo :goo if exist "\!machine!\c$\Arquivos de Programas (x86)" goto 64bits goto 32bits :64bits xcopy /D /Y /F /C %server%\%file64% \!machine!\c$\ PsExec.exe -d \!machine! "C:\%file64%" /q goto end :32bits xcopy /D /Y /F /C %server%\%file32% \!machine!\c$\ PsExec.exe -d \!machine! "C:\%file32%" /q goto end :end echo Finished !micro! ) pause
- Editado Fábio JrModerator sexta-feira, 22 de novembro de 2013 13:44 Formatação código
Respostas
Todas as Respostas
-
Diego,
Executar o script a partir de um prompt já aberto e sem a linha @echo off no inicio pode ajudar a identificar o erro.
De cara eu vi uma coisa que pode estar gerando erro:
if exist "\!machine!\c$\Program Files (x86)" goto 64bits
nesta linha você está tentado identificar se um diretório existe em uma máquina remota, só que está faltando um "\" no inicio do caminho.
Fábio de Paula Junior
-
Oi Fábio,
Acabei colando errado, existe o \\ no script..
me parece que o goto dá pau no for
ai achei algo colocando um call :roda
onde esse :roda eu coloco logo abaixo..
vou fazer mais alguns testes...
obrigado!
- Editado dimago sexta-feira, 22 de novembro de 2013 14:55
-