批次:标签长度

Jér*_*ôme 8 batch-file

我想知道批处理文件中标签的最大长度.

我发现这篇微软文章说:

MS-DOS只识别批处理文件标签的前八个字符; 后续字符被忽略.

他们还提供了一个例子:

@echo off
goto latestch
:latestchanges
echo two
:latestch
echo three
Run Code Online (Sandbox Code Playgroud)

应该输出

two
three
Run Code Online (Sandbox Code Playgroud)

代替

three
Run Code Online (Sandbox Code Playgroud)

但在我的系统上,我得到了

three
Run Code Online (Sandbox Code Playgroud)

我尝试使用Windows 7(6.1.7600)和WindowsXP(5.1.2600),并在两者上获得相同的结果.

在我看来,没有八个字符的限制!我错过了什么吗?

JRL*_*JRL 10

限制为2047和8192,具体取决于您的操作系统.请参阅此知识库文章.


mas*_*oud 5

这个例子MS-DOS不是cmd.exe.你的版本cmd.exe高于MS-DOS.随意使用任何长度的标签.

根据该文章,此限制适用于:

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
Run Code Online (Sandbox Code Playgroud)