在Windows批处理脚本中添加存储在变量中的数字

在Windows批处理脚本中添加存储在变量中的数字

我在批处理脚本中有一个循环,我想用循环计数器做一些算术运算。我发现了如何评估表达式,如何在这里添加数字:在Windows批处理脚本中评估表达式

我该如何使用变量来做同样的事情?

例如:

set x = 100
for /L %%i in (1,1,5) do (
    set Result=0
    set /a Result = %%i+%%x
    echo %Result%
)

正如我期望的输出

101 102 103 104 105

谢谢!

答案1

您确实应该远离批处理文件。

@echo off

setlocal enabledelayedexpansion

set x=100
set result=0

for /L %%i in (1,1,5) do (

  set /A result=!x! + %%i

  echo !result!
)

endlocal

答案2

您在每个步骤中都将结果重置为零。将其移到循环之前。此外,请尝试help setcmd提示符下获取有关所有这些的更多信息。特别是查看有关延迟环境变量扩展的部分。

相关内容