Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 使用if批处理文件将数组变量与变量合并_Arrays_Batch File - Fatal编程技术网

Arrays 使用if批处理文件将数组变量与变量合并

Arrays 使用if批处理文件将数组变量与变量合并,arrays,batch-file,Arrays,Batch File,我有一个小循环: for /f "delims=: tokens=*" %%e in (include#.forms) do ( set/a C+=1 set In!C!=%%e ) 但我想使用另一个for循环来读取它: for /l %%N in (1 1 !C!) do ( for /f "delims=: tokens=*" %%a in (!In!C!!) do..... 但是如何获取数组的特殊变量和数组中已经使用的变量呢。因为!!在里面C结果会好起来的!在里面还有!C不是合并而是分

我有一个小循环:

for /f "delims=: tokens=*" %%e in (include#.forms) do (
set/a C+=1
set In!C!=%%e
)
但我想使用另一个for循环来读取它:

for /l %%N in (1 1 !C!) do (
for /f "delims=: tokens=*" %%a in (!In!C!!) do.....

但是如何获取数组的特殊变量和数组中已经使用的变量呢。因为!!在里面C结果会好起来的!在里面还有!C不是合并而是分离。

我自己发现了这个问题。要合并到变量,例如:

set 1:1=Hello
set array_row=1
set array_id=1
我们要回显
!%数组\行%:%箭头\ id%,但这不起作用。我们将使用for语句:

for /f %%x in ("!array_row!") do for /f %%y in ("!array_id!") do echo !%%x:%%y!
%%
变量首先执行,因此我们将使用它。回显前的输出将是
!1:1!

我之所以要这样做是因为我在处理数组,例如:

set file1_name=Text.txt
set file2_name=Run.bat
我想比较一下用户输入是否等于要运行的文件(实际上不是他们的文件)。为此,我们将(回应他们)


因为它是一个数组,所以我们使用for/L(循环)而不是for/f(读取)。两者都使用%%变量。

我自己发现了这个问题,哈哈。要合并到变量,例如:

set 1:1=Hello
set array_row=1
set array_id=1
我们要回显
!%数组\行%:%箭头\ id%,但这不起作用。我们将使用for语句:

for /f %%x in ("!array_row!") do for /f %%y in ("!array_id!") do echo !%%x:%%y!
%%
变量首先执行,因此我们将使用它。回显前的输出将是
!1:1!

我之所以要这样做是因为我在处理数组,例如:

set file1_name=Text.txt
set file2_name=Run.bat
我想比较一下用户输入是否等于要运行的文件(实际上不是他们的文件)。为此,我们将(回应他们)


因为它是一个数组,所以我们使用for/L(循环)而不是for/f(读取)。两者都使用%%变量。

for/f
循环应该调用
!在%%N而不是
!在里面C除非你想让它反复读取数组中的相同元素。是的,这可能是一种不使用变量的方法,但我如何将它放入IF语句中呢。比如:如果
“!In!!C!”==“…”
但是
!在里面C在+C中变为非!1号!或In2!。/f的
循环应该正在调用
!在%%N而不是
!在里面C除非你想让它反复读取数组中的相同元素。是的,这可能是一种不使用变量的方法,但我如何将它放入IF语句中呢。比如:如果
“!In!!C!”==“…”
但是
!在里面C在+C中变为非!1号!或In2!。