Войти

Показать полную графическую версию : [решено] Как перейти к следующему значению %%i


Loki3D
27-11-2012, 14:33
есть цикл FOR
в нем условие.
При достжении условия я хочу не производить никаких действий, а пропустить их, перейдя к следующему значению переменной цикла.

вот мой пример.


Echo Off

SETLOCAL ENABLEDELAYEDEXPANSION
for /L %%a in (1,1,10) do (
Set num=%%a
Echo !num!
If !num! GEQ 5 (
Echo BAD
Goto NEXT
)
Echo OK
:NEXT
)
ENDLOCAL


на выходе я расчитываю получить
1
OK
2
OK
3
OK
4
OK
5
BAD
6
BAD
..
10
BAD

но получаю ошибку о непредвиденном появлении ")"

может ктото подсказать решение?

Iska
27-11-2012, 15:41
@echo off
setlocal enableextensions enabledelayedexpansion

for /l %%i in (1, 1, 10) do (
<nul set /p sTempValue=%%i

If %%i lss 5 (
echo Ok
) else (
echo Bad
)
)

endlocal
exit /b 0

Loki3D
28-11-2012, 08:27
н-да, действительно так логичнее. Спасибо что ткнули носом :)




© OSzone.net 2001-2012