繁体   English   中英

使用if Batch File将数组变量与变量合并

[英]Merge an array variable with a variable using if Batch File

我有一些for循环:

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! 没有合并但是分开了。

我自己发现了这个哈哈。 合并到变量ex:

set 1:1=Hello
set array_row=1
set array_id=1

我们想回声!%array_row%:%arrow_id%! ,但这不起作用。 我们将使用for语句:

for /f %%x in ("!array_row!") do for /f %%y in ("!array_id!") do echo !%%x:%%y!

首先执行%%变量,因此我们将使用它。 回声之前的输出将是!1:1!

我想要这个的原因是因为我正在处理数组ex:

set file1_name=Text.txt
set file2_name=Run.bat

我想比较一下用户输入是否等于要运行的文件(实际上不是文件)。 为此,我们将(回应他们)

for /L %%C in (1 1 2) do echo !file%%C_name!

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM