Exit /b 0 does not set %errorlevel% to 0




When it comes to troubleshooting errors related to errorlevel, one of the most commonly asked questions is why does “exit /b 0” not set the errorlevel to 0?

The answer to this question lies in the differences between the exit command and the errorlevel environment variable. Errorlevel is an environment variable that is used to return the exit code from a program or script. The exit code is a number that is returned by the program or script to indicate the success or failure of the operation.

The exit command, on the other hand, is used to exit a program or script. The exit command takes two parameters, the first being the exit code and the second being the type of exit code. For example, if you type “exit /b 0”, the exit code will be 0, and the type of exit code will be “/b”, which stands for “batch”.

The reason why “exit /b 0” does not set the errorlevel to 0 is because the exit command does not set the errorlevel environment variable. Instead, the exit command sets the exit code, which is then stored in the errorlevel environment variable. The exit code is stored in the errorlevel environment variable, and it is not updated until the program or script exits.

In order to set the errorlevel to 0, you must use the “set” command. The “set” command takes two parameters, the first being the environment variable name, and the second being the value you want to set it to. In this case, you would use the following command to set the errorlevel environment variable to 0:

set errorlevel=0

By using the “set” command, you can manually set the errorlevel environment variable to 0, regardless of the exit code returned by the program or script. This is a useful technique if you want to ensure that the errorlevel environment variable is always set to 0, regardless of the exit code returned by the program or script.

In conclusion, “exit /b 0” does not set the errorlevel to 0 because the exit command does not set the errorlevel environment variable, it only sets the exit code, which is then stored in the errorlevel environment variable. The only way to manually set the errorlevel environment variable to 0 is to use the “set” command.

Inquire Now

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Find your next full or part-time role here

ScaleDesk can either help you find your next full time gig or a part time side gig where you can create extra income!

Onboard with us once
Skip HR screening and go to the final interview with with only your resume and a video interview you never have to redo
Get paid electronically every month for the hours you work
We will be your reference even if you work for us once

IT Teams: Use ScaleDesk to augment your team

Schedule Demo