Sean's Personal Code Samples And References

Quit the current batch script, quit the current subroutine or quit the command processor (CMD.EXE) optionally setting an errorlevel code.

      EXIT [/B] [exitCode]

    /B        When used in a batch script, this option will exit 
              only the script (or subroutine) but not CMD.EXE

   exitCode   Sets the %ERRORLEVEL% to a numeric number.
              If quitting CMD.EXE, set the process exit code no.
You should never attempt to directly write to the %errorlevel% variable, (i.e. don’t try anything like SET errorlevel...) using the EXIT command provides a safe way to alter the value of the built-in errorlevel variable. Unlike goto:eof the Exit /b command allows you to set a specific errorlevel.


:: Exit if a required file is missing 
@echo off
If not exist MyimportantFile.txt Exit /b
Echo If we get this far the file was found

:: Set the error level to 5
@echo off
call :setError
echo %errorlevel%
goto :eof

exit /B 5

To make this more flexible you can change the subroutine to set any errorlevel like this:

exit /B %1

Now you can call the subroutine:   call :setError 6 replacing 6 with whatever value you need the errorlevel to be set to.

Sean Marcellus