Microsoft KB Archive/34760
Article ID: 34760
Article Last Modified on 11/25/2003
- Microsoft MS-DOS 3.3 Standard Edition
- Microsoft MS-DOS 3.3a
- Microsoft MS-DOS 4.0 Standard Edition
- Microsoft MS-DOS 5.0 Standard Edition
This article was previously published under Q34760
If the last line in a batch file is a label and there is no carriage return character after the label, the command immediately preceding the label will be executed twice.
The workaround for this problem is to include a carriage return at the end of a label.
Microsoft has confirmed this to be a problem in MS-DOS versions 3.3, 3.30a, 4.0, and 5.0. This problem was corrected in MS-DOS version 6.0.
The following batch file
echo hello <cr> :label <cr> <eof>
will produce the following output:
C>echo hello hello C> C>
If the carriage return after the label is omitted, as follows
echo hello <cr> :label <eof>
the file will produce the following output:
C>echo hello hello hello C> C>
Additional query words: 3.30 3.30a 4.00 5.00 noupd