Testing for a Specific Error Level in Batch Files

Article translations Article translations
Article ID: 69576 - View products that this article applies to.
This article was previously published under Q69576
Expand all | Collapse all

SUMMARY

The Microsoft MS-DOS "IF ERRORLEVEL <number>" statement checks for error levels of the given number or greater. If you want to check for a specific error level, you should use the following command construct
   IF ERRORLEVEL <N> IF NOT ERRORLEVEL <N+1> <COMMAND>
				
where <N> is the desired number. The <N+1> portion of the command must be calculated as the command is entered, because the MS-DOS command interpreter cannot perform mathematical calculations.

MORE INFORMATION

The nested IF statements allow specific selection of an error level because the NOT operator effectively reverses the inequality. The command
   IF ERRORLEVEL 5 ...
				
is equivalent to the algebraic construct
   IF E = 5 OR E > 5 THEN ...
				
while the command
   IF NOT ERRORLEVEL 6
				
is equivalent to the algebraic construct:
   IF E < 6 THEN ...
				
The combination of the two IF commands works as described because the second IF is executed only if the first is true, and the <command> is executed only if the second is true; therefore, the combination of the two commands is executed only if BOTH are true. Because the desired error level is bracketed with the two tests, the entire conditional is TRUE only when ERRORLEVEL is exactly that value.

This same syntax can be expanded to cover a sequential range of ERRORLEVEL return codes by increasing the difference between the values checked for.

Properties

Article ID: 69576 - Last Review: November 16, 2006 - Revision: 2.1
APPLIES TO
  • Microsoft MS-DOS 3.1
  • Microsoft MS-DOS 3.2 Standard Edition
  • Microsoft MS-DOS 3.21 Standard Edition
  • Microsoft MS-DOS 3.3 Standard Edition
  • Microsoft MS-DOS 3.3a
  • Microsoft MS-DOS 4.0 Standard Edition
  • Microsoft MS-DOS 4.01 Standard Edition
  • Microsoft MS-DOS 5.0 Standard Edition
  • Microsoft MS-DOS 5.0a
  • Microsoft MS-DOS 6.0 Standard Edition
  • Microsoft MS-DOS 6.2 Standard Edition
  • Microsoft MS-DOS 6.21 Standard Edition
  • Microsoft MS-DOS 6.22 Standard Edition
Keywords: 
KB69576
Retired KB Content Disclaimer
This article was written about products for which Microsoft no longer offers support. Therefore, this article is offered "as is" and will no longer be updated.

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com