我正在学习批处理脚本,我遇到了在数组中创建结构的部分。这是作为示例给出的示例程序。当我尝试执行时,它不起作用。有人能解释一下我的脚本有什么不对吗? 提前谢谢!
码
@echo off
set len=3
set obj[0].name=Joe
set obj[0].id=1
set obj[1].name=Mark
set obj[1].id=2
set obj[2].name=mohan
set obj[2].id=3
set i=0
:loop
if %i% equ %len% goto :eof
set cur.name=
set cur.id=
for /f "usebackq delims==. tokens=1-3" %%j in ('set obj[%i%]') do (
set cur.%%k=%%l
)
echo name=%cur.name%
echo value=%cur.id%
set /a i=%i%+1
goto loop
答案 0 :(得分:2)
for /f "usebackq delims==. tokens=1-3" %%j in ('set obj[%i%]') do (
错了。有两种单引号:
使用正确的引号' (没有usebackq
):
for /f "delims==. tokens=1-3" %%j in ('set obj[%i%]') do (
或usebackq
使用`引号
for /f "usebackq delims==. tokens=1-3" %%j in (`set obj[%i%]`) do (