[英]How to add variables in a batch file
我正在尝试获取数字列表,例如11111111和一个字母。 字母si用数字计算。 就像是:
@echo off
set var=23
FOR /L %%H IN (40000000,1,49999999) DO (
set number = %%H+%var%
echo %number%A
)
pause
exit
我想要(或多或少)
400000023A
400000024A
400000025A
...
但是不更改FOR语句...这可能吗?
要继续jeb所说的,对于您要求的输出,代码应该是这样的:
@echo off & setlocal EnableDelayedExpansion
set var=23
FOR /L %%H IN (40000000,1,49999999) DO (
set /a number=%%H+!var!
echo !number!A
)
endlocal
pause
exit
set
语句避免空格 如果要计算,请使用set / a
设置/ a数字= %% H + var
避免块中(以及FOR块中)的百分比扩展
请使用延迟扩展(将setlocal EnableDelayedExpansion
添加到您的文件中)
echo !number!A
jeb提供了修复代码所需的提示,而Jeff K实际上实现了修复。
但是,由于将常量添加到每个值,因此将常量添加到FOR / L起始值和结束值更加简单有效。
@echo off
setlocal
set var=23
set /a "start=40000000+var, end=49999999+var"
for /l %%H in (%start%, 1, %end%) do echo %%HA
有,但是更改了FOR语句。
您实际上实际上忘记了setlocal命令。
setlocal EnableDelayedExpansion
需要此命令以添加变量。
还是不明白吗?
这是代码,以便您添加变量。
@echo off
setlocal EnableDelayedExpansion
cls
set var=17
echo %var%
pause
set /a var=%var%+7
echo %var%
pause
尝试查找我的代码中的任何错误和错误。 然后测试一下。
你有它! 增加了变量!
批量使用数字
set /a
看到set /?
对于所有信息。
最好的方法是:
set /a counter+=1
所以:
@echo off
set /a counter=
:Top
set /a counter+=1
echo 4000000%counter%A
GOTO Top
您可以复制上面的代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.