MS-DOS: Batch File Labels Are Not Case Sensitive

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

SUMMARY

The labels of batch files, which are interpreted with the MS-DOS COMMAND.COM command interpreter, are not case sensitive. For example, the following labels, as well as any other capitalization combinations, are equivalent:
:ONE
:One
:one
This is because the command processor converts all label characters to uppercase to resolve label references when it processes a batch file.

MORE INFORMATION

In the following batch file, the labels "TWO" and "Two", as well as "End" and "END" are interpreted as the same label:
if %1 == one then goto :TWO
goto END
:Two
echo One Testing.
:End
The following batch file executes the first occurrence of the label, disregarding the capitalization of that label:
@echo off
if %1 == one goto test1
goto END
:TEST1
echo Test 1
goto END
:test1
echo Test 2
:End
echo DONE!
Even though the label in the second line is lowercase, the batch file executes the first occurrence of the label. The output of the batch file, if invoked with "one" as the first parameter, would be as follows:
Test 1
DONE!

Properties

Article ID: 39627 - Last Review: November 26, 2003 - Revision: 3.0
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
Keywords: 
KB39627
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