我很好奇为什么开关直接跟在set命令后面没有空格,工作方式与有空格相同;For循环开关处理
set /a i+=1
,工作方式相同set/a i+=1
,甚至set/ai+=1
然而 - 同样的逻辑并不适用于for命令 - 以下将不起作用:
for/L %a in (1,1,2) do echo %a
但是它产生的错误:
'for' is not recognized as an internal or external command,
operable program or batch file.
什么,而不是我想像的要'for/L' is not recognized ...
我的问题是,为什么当它明确区分开关与命令的区别时,它是否接受语法,并且随后不起作用 - 此外,为什么它会产生上述错误?
M $为'set','for','for/f','if'和'echo'构建了不同的解析器。所以你应该问上个世纪的M $学员。你可以在dostips.com上找到更多关于奇怪语言的信息 – Endoro