У меня есть следующая проблема:
Я создал пакетный скрипт, который вызывает себя там (чтобы иметь возможность писать журнал параллельно). В сценарии я запускаю другой процесс (например, start startServer.bat
), который запускает процесс Java и все время остается открытым.
В моем исходном сценарии я жду 30 секунд, проверяю, запущен ли процесс, и делаю:
exit /B 0
К сожалению, это не работает, окно показывает, что выход /B 0 оценивается, но окно остается открытым. Когда я закрываю окно с другим процессом (имеется в виду «дочерние» процессы, запущенные в моем .bat), мой скрипт продолжает выполняться.
So:
scriptA.bat
-> in there I call: start startServer.bat
-> wait 30 seconds
-> check is server is started
-> exit /B 0
Process hangs up!
Что очень странно, если я оберну другой скрипт, например:
scriptB.bat
-> call scriptA.bat
-----> in there I call: start startServer.bat
-----> wait 30 seconds
-----> check if server is started
-----> exit /B 0
-> scriptA.bat continues without any hangup!
Я также пробовал то же самое с выходом 0 (без / B), тот же результат! В первом случае он зависает, во втором мое окно закрывается как положено...
Кто-нибудь из вас когда-либо сталкивался с такой проблемой и знает, что здесь не так? Процесс зависает!