我正在运行第一批实用程序,调用另一个第二批。第二批调用setup.cmd命令,该命令具有内部Java代码以修补文件。
当我从第一批打电话给第二批时 -
我尝试使用start / wait来调用setup.cmd,但这不会将控件返回到第一批。它会在安装后保留会话。
第一批使用CALL调用第二批 第二批有以下代码来调用setup.cmd
%windir%\system32\cmd /c start /WAIT Disk1\setup.cmd %parameter%
如何在setup.cmd完成后将控件恢复到第一批?
答案 0 :(得分:0)
如果你只是在没有启动命令的情况下使用它,call batch2
那么它将等到它完成。
call Disk1\setup.cmd %parameter%
答案 1 :(得分:0)
上周通过使用循环和调用setup.cmd解决了这个问题...对不起这篇文章中的延迟。
@echo off
CALL \Installers\Disk1\setup.cmd -i silent -FILE=\Silent\Silent.txt
:LOOP
tasklist /FI "username eq SOMEUSER" 2>NUL | find /I /N "java">NUL
ECHO %ERRORLEVEL%
if "%ERRORLEVEL%"=="1" (
GOTO CONTINUE
) ELSE (
ECHO PATCH is still running, Sleeping for 5 Mins
SLEEP 300
GOTO LOOP
)
:CONTINUE