%RANDOM%
我在以下命令中的环境变量方面遇到了问题:
FOR /l %%A in (0,1,30) do set /a results=1600 + %RANDOM% %% (1900 - 1600 + 1) && echo %%A--!results!
我期望这个输出:
0--1656
1--1743
2--1629
3--1887
…
但我明白这一点:
0--1656
1--1656
2--1656
3--1656
…
变量%RANDOM%
是理应返回一个随机数,但它给出的是相同的数字。问题是什么?我该如何修复?
答案1
RANDOM
您还需要对变量使用延迟扩展:
FOR /l %%A in (0,1,30) do set /a results=1600 + !RANDOM! %% (1900 - 1600 + 1) && echo %%A--!results!