在批处理文件中,for循环变量(即%% i)是否属于环境变量?我们如何将值重新分配给%% i?

时间:2016-07-08 01:58:39

标签: batch-file

我尝试了以下代码,而echo输出是相同的,即1.有没有办法为for-loop变量分配另一个值?

@echo off
setlocal enabledelayedexpansion
for /l %%i in (1,1,1) do (
echo %%i
set %%i=5
echo %%i
)
pause

1 个答案:

答案 0 :(得分:0)

问题下面的评论已经解释过,你试图实现的操作从根本上说是错误的。

但是,我想使用不同的观点并回答这个问题:“我们怎样才能将值重新分配给%% i?”。答案很简单:以同样的方式我们将值分配给第一个%% i,即通过另一个for命令。这个答案是显而易见的:如果您使用for命令将值分配给第一个%% i,为什么要尝试使用不同命令重新分配其值?

@echo off
setlocal enabledelayedexpansion
for /l %%i in (1,1,1) do (
echo %%i
for %%i in (5) do echo %%i
)