如何解决批量编程代码中的这个错误?

时间:2012-07-19 21:36:44

标签: batch-file

我正在尝试创建字符串的子字符串并在cmd中打印但无法执行此操作。

set p=mnopq
for /L %a in (1,1,5) Do (
   set q=%p:~%%a%,1
   echo %q%
)

但是它给出了错误,请帮我解决这个问题。提前做好准备..

1 个答案:

答案 0 :(得分:1)

这需要通过SETLOCAL 延迟扩展功能(请参阅cmd /?帮助使用)。它没有按预期工作的原因是因为for命令后面的命令被视为参数,所以任何基于%的变量都将立即扩展,除了用于{{1命令。

这里是更正后的批处理命令。

for