如何从批处理文件中的for循环内的字符串中读取字符

时间:2013-04-01 11:59:10

标签: batch-file

我试图从for循环中的字符串中读取一些字符,但是没有得到结果。我的代码就像这样

@echo off
setlocal enableextensions enabledelayedexpansion
set str="abcdefgh"
for /l %%x in (1,1,5) do (
set fstr=!str:~1,%%x!
echo %fstr%
)

我一直在得到结果“Echo is off”。请帮忙解决这个问题

1 个答案:

答案 0 :(得分:0)

更改

echo %fstr%

echo !fstr!

%fstr%显示该行为PARSED时存在的fstr的值,即未设置,因此

ECHO %fstr%

被解释为

echo

因此ECHO会报告回音状态 - ECHO is off

ECHO !fstr!

显示fstr的值,因为它在循环中被更改(RUN-TIME值)。