script em lote com FOR não funciona
Preciso de ajuda com o meu script abaixo:
Ele não continua para a próxima linha de machine.txt Se eu colocar o ")" depois de "echo! Machine", ele mostra as máquinas dentro do machine.txt, portanto, funciona!
Mas quando o ")" está no final do script, ele não continua e sai ..
@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
Qualquer ideia? Obrigado!