asked on
@echo off
cls
setlocal EnableDelayedExpansion
SET arg1=%1
call %~dp0\ABMaster.bat
::#Get the number of arguments
SET /A ARGS_COUNT=0
FOR %%A in (%*) DO SET /A ARGS_COUNT+=1
::#Calculate thread count,thread start and thread end numbers only all three arguments are supplied.
IF "%3" == "" GOTO cont
SET /A a = %1%
SET /A b = %2%
SET /A c = %3%
:cont
IF %ARGS_COUNT% == 2 GOTO MIN_ARG
IF %ARGS_COUNT% geq 4 (
:MIN_ARG
echo Incorrect arguments provided. Ending the job. Run the job with correct arguments as shown in below example.
set ERRORLEVEL=-1
GOTO JOB_STATUS
)
IF %ARGS_COUNT% leq 1 (
IF "%arg1%" == "" (
@echo Executing job without Parameters
Java %JAVA_OPTS% -Djava.awt.headless=true -server -Xms1024m -Xmx2048m -XX:MaxPermSize=512m -XX:NewSize=64m -XX:MaxNewSize=64m -XX:NewRatio=3 com.abc.abcDriver AB-A0123-DLY >%BATCH_LOG%\AB-A0123-DLY_%timestamp%.txt 2>&1
) ELSE (
@echo Executing job with single Parameters
FOR /L %%G IN (1,1,%arg1%) DO (
@echo Executing job with Parameter %%G
cmd /c start /b %~dp0TestParallelRun.bat AB-A0123-DLY %%G %arg1%
ping -n 6 127.0.0.1 >nul
)
)
:checkfile
FOR /L %%G IN (1,1,%arg1%) DO (
if not exist %BATCH_LOG%\AB-A0123-DLY_T_%%G_%arg1%.txt GOTO checkfile
)
FOR /L %%G IN (1,1,%arg1%) DO (
set /p value=< %BATCH_LOG%\AB-A0123-DLY_T_%%G_%arg1%.txt
SET trimval=!value: =!
IF NOT !trimval! == 0 (
set ERRORLEVEL=!trimval!
del %BATCH_LOG%\CO\AB-A0123-DLY_T_*.txt
GOTO JOB_STATUS
)
)
)
IF "%ARGS_COUNT%" == "3" (
FOR /L %%G IN (%b%,1,%a%) DO (
@echo Executing job with Parameter %%G
cmd /c start /b %~dp0TestParallelRun.bat AB-A0123-DLY %%G %a%
ping -n 6 127.0.0.1 >nul
IF %%G geq %c% (
goto :BREAK
)
)
:checkfile2
FOR /L %%G IN (%b%,1,%a%) DO (
if not exist %BATCH_LOG%\AB-A0123-DLY_T_%%G_%a%.txt GOTO checkfile2
IF %%G geq %c% (
goto :checkfile3
)
)
:checkfile3
FOR /L %%G IN (%b%,1,%a%) DO (
set /p value=< %BATCH_LOG%\AB-A0123-DLY_T_%%G_%a%.txt
SET trimval=!value: =!
IF NOT !trimval! == 0 (
set ERRORLEVEL=!trimval!
del %BATCH_LOG%\AB-A0123-DLY_T_*.txt
GOTO JOB_STATUS
)
IF %%G geq %c% (
goto :BREAK
)
)
)
:BREAK
if exist %BATCH_LOG_TRUNK%\AB-A0123-DLY_T_*.txt del %BATCH_LOG_TRUNK%\AB-A0123-DLY_T_*.txt
:JOB_STATUS
call %~dp0\ABCJobStatus.bat
Batch files are text files containing a script of commands that are executed by the command interpreter on DOS, OS/2 and Windows systems. Most commonly, they are used to perform a series of functions that are repeated -- copying a set of files created daily with one step, for example.
TRUSTED BY
ASKER
Ex:AB-A0123-DLY 5 5 15 and batch was ended successfully with zero return code as shown in below.
Batch Job succeeded with error leve = 0 l
ABCJobStatus.bat code as shown in below
Open in new window
It was failing with single and without arguments as explained in the above