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


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:
This is because the command processor converts all label characters to uppercase to resolve label references when it processes a batch file.


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
echo One Testing.
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
echo Test 1
goto END
echo Test 2
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


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