缺少 <cr>批处理标签导致重复的上个命令之后

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 34760
本文已归档。它按“原样”提供,并且不再更新。
概要
如果在批处理文件中的最后一行是一个标签,并在标签后没有任何回车符前面标签命令将会执行两次。

此问题的解决方法是在包含标签的末尾的回车。

Microsoft 已经确认这是 MS-DOS 版本 3.3、 3.30a、 4.0,和 5.0 中的问题。在 MS-DOS 版本 6.0 中,此问题已得到纠正。
更多信息
以下的批处理文件
echo hello <cr>:label <cr><eof>				
将产生以下输出:
C>echo hellohelloC>C>				
如果省略该标签后回车,作为遵循
echo hello <cr>:label <eof>				
文件都将产生以下输出:
C>echo hellohellohelloC>C>				
3.30 3.30a 4.00 5.00 noupd

警告:本文已自动翻译

属性

文章 ID:34760 - 上次审阅时间:08/23/2013 17:17:15 - 修订版本: 3.0

Microsoft MS-DOS 3.3 标准版, Microsoft MS-DOS 3.3a, Microsoft MS-DOS 4.0 标准版, Microsoft MS-DOS 5.0 标准版

  • kbnosurvey kbarchive kbmt KB34760 KbMtzh
反馈