У меня возникли некоторые трудности в понимании того, как Nested IF работает в сценарии Windows .bat. То, что я хочу достичь, заключается в следующем. Я передам два параметра в файл bat
ЕСЛИ первый параметр = 0 И если Второй параметр = 0, запустите proc1
ЕСЛИ первый параметр = 0 И второй, а не 0, запустить proc2
ЕСЛИ первый параметр не равен 0, запустите 3
Скелет кода, который я написал до сих пор,
@echo off
IF %1% == 0 (
IF %2% == 0 ( goto proc1
) ELSE ( goto proc2
)
ELSE ( goto proc3
)
:proc1
echo in Proc1 0 0
pause
exit
:proc2
echo in Proc2 0 N0
pause
exit
:proc3
echo in Proc3 N0 0
pause
exit
Проблема в том, что он работает нормально для первых двух условий, но когда первый параметр ненулевой, он все равно падает через proc1, тогда как ожидаемый - proc3. Что мне здесь не хватает? Скрипт не выдает никакой ошибки, кроме случаев, когда параметры опущены в первую очередь.