.bat 变量重复赋值
时间: 2023-11-13 17:04:23 浏览: 284
wince.bat 解析
5星 · 资源好评率100%
在批处理脚本中,变量的赋值会覆盖之前的值,相当于重新赋值。如果你想要保留之前的值并在新的值上进行操作,可以使用延迟变量扩展或使用额外的变量来保存之前的值。
延迟变量扩展是通过启用 `setlocal enabledelayedexpansion` 并使用 `!` 符号来访问变量的新值。下面是一个示例:
```bat
@echo off
setlocal enabledelayedexpansion
set var=Hello
echo Original value: %var%
set var=World
echo New value: %var%
echo Delayed expansion:
set var=Hello
echo Original value: !var!
set var=World
echo New value: !var!
endlocal
```
输出结果:
```
Original value: Hello
New value: World
Delayed expansion:
Original value: Hello
New value: World
```
在上面的示例中,我们使用 `setlocal enabledelayedexpansion` 启用了延迟变量扩展。然后,我们使用 `!` 符号来访问变量的新值。
另一种方法是使用额外的变量来保存之前的值。下面是一个示例:
```bat
@echo off
set var=Hello
echo Original value: %var%
set prevVar=%var%
set var=World
echo New value: %var%
echo Previous value: %prevVar%
```
输出结果:
```
Original value: Hello
New value: World
Previous value: Hello
```
在上面的示例中,我们使用 `prevVar` 变量来保存之前的值,在修改 `var` 变量的同时保留了之前的值。
阅读全文