连接数组中的字符串

时间:2019-01-17 06:02:26

标签: batch-file

我想在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

1 个答案:

答案 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即可。