小编Nat*_*108的帖子

变量由for循环中的其他变量组成

在这种情况下:

@Echo off
Setlocal EnableDelayedExpansion

Set /a cnt=0

For /f "delims=" %%A in ('type "Test.txt"') do (
 Set /a "cnt=!cnt!+1"
 Set "var!cnt!=%%A"
)

Set /a "cnt2=0"

For /F %%B in ('Dir /a:d /b') Do (
 Set /a cnt2=!cnt2!+1
 Echo !%var%%cnt2%!
)
Run Code Online (Sandbox Code Playgroud)

"varcnt2"由变量"var"和"cnt2"组成.虽然我期望的输出是:

AqNaTwIznj
dl4lMkYorm
gDtdyFmptd
MmrbIoJrUu
NszuIe8ZMt
QbWYTy7oqC
xUbBgKifGD
y0ouJH3EtK
ZSZxlSnBlQ
zVyRcCFXrM
Run Code Online (Sandbox Code Playgroud)

(Test.txt的内容)我总是得到别的东西.我试过放置%和!以各种方式,但没有一个有效.这里有些例子:

!var!cnt2!! 输出 cnt2

%var!cnt2!% 输出 Echo is off

%var%!cnt2!% 输出 1 2 3 4 5 6 7 8 9 10

!%var%%cnt2%! 输出 Echo is off

上次我遇到这个,我写了这个批处理文件来测试这个:

@Echo …
Run Code Online (Sandbox Code Playgroud)

variables batch-file

6
推荐指数
0
解决办法
115
查看次数

标签 统计

batch-file ×1

variables ×1