Batch file 不带setlocal enabledelayedexpansion的循环批处理
例如,使用此代码:Batch file 不带setlocal enabledelayedexpansion的循环批处理,batch-file,Batch File,例如,使用此代码: setlocal enabledelayedexpansion set arrayline[0]=############ set arrayline[1]=#..........# set arrayline[2]=#..........# set arrayline[3]=#..........# set arrayline[4]=#..........# set arrayline[5]=#..........# set arrayline[6]=#..
setlocal enabledelayedexpansion
set arrayline[0]=############
set arrayline[1]=#..........#
set arrayline[2]=#..........#
set arrayline[3]=#..........#
set arrayline[4]=#..........#
set arrayline[5]=#..........#
set arrayline[6]=#..........#
set arrayline[7]=#..........#
set arrayline[8]=#..........#
set arrayline[9]=#..........#
set arrayline[10]=#..........#
set arrayline[11]=#..........#
set arrayline[12]=############
::read it using a FOR /L statement
for /l %%n in (0,1,12) do (
echo !arrayline[%%n]!
)
pause
我想使用“普通”变量语法,而不是使用setlocal enabledelayedexpansion(第1行)
我的意思是,而不是!阵列线[%%n]
我想要这样的东西:%arrayline[n]%
以便将信息放在变量中(这样:)
我需要将信息放入变量中(此处为缓冲区)
如果可能的话,有人能替换我的代码吗
我是一个乞丐,所以如果还不够清楚,就问我;)
先谢谢你
CALL echo %%arrayline[%%n]%%
是这里的经典解决方案。这将在子过程中执行echo%arrayline[n]
是这里的经典解决方案。这将在子过程中执行
echo%arrayline[n]
我真的很想放!阵列线[%%n]!在变量中,但我不能使用该语法。你的不允许把信息也放在一个变量中,所以…我真的想放!阵列线[%%n]!在变量中,但我不能使用该语法。您的不允许将信息也放入变量中,因此…为什么要避免使用setlocal enabledelayedexpansion?在四个循环中使用百分比扩展很少有好的理由。我想您误解了延迟扩展的一些观点,为什么要避免使用setlocal enabledelayedexpansion?在四个循环中使用百分比扩展很少有好的理由。我想你误解了延迟扩张的一些观点
CALL echo %%arrayline[%%n]%%
CALL SET "myvar=%%arrayline[%%n]%%"
CALL ECHO %%myvar%%