我想在for循环内将数组中的字符串连接起来。一旦连接起来,它应该执行一些任务,然后转到数组中的另一个变量。请让我知道该怎么做。给我一些例子。
这是我要执行的代码。
@echo off
set topic[0]=USB
set topic[1]=hello
set topic[2]=mic
set topic[3]=Operators
set file = C:\Users\User\Android_Studio_Projects
for /l %%n in (0,1,2) do (
set file=%file% CD\!topic[%%n]!
)
pause
答案 0 :(得分:0)
在设置变量时,您需要注意=
后的空格,并且要使用delayedexpansion
,还需要启用它。在设置变量时,您也倾向于使用空格,总是将变量集用双引号引起来,就像我在下面所做的那样。试试这个:
@echo off
setlocal enabledelayedexpansion
set "topic[0]=USB"
set "topic[1]=hello"
set "topic[2]=mic"
set "topic[3]=Operators"
set "file=C:\Users\User\Android_Studio_Projects\"
for /l %%n in (0,1,3) do (
echo cd %file%!topic[%%n]!
)
pause
您无需在循环内再次设置%file%
,而不会看到任何更改。这样只会向您显示命令,将其cd到每个目录,只需在循环中删除echo
即可。