- 变量的定义
set VARNAME=VALVALUE
set /A NUMVARNAME=NUMVALUE
- 变量作用域
变量有gloabl和local之分。(缺省是global)
在setlocal和endlocal之间定义的变量就是local的,也就是出了这个local之后就无效;
当然在一个local可以访问outer的变量,直接使用%VAR%就行,但是不能修改(后面介绍如何修改),因为如果想通过SET VAR=.../来修改外面的变量,实际上这个命令是在当前local创建了一个新的同名变量。
@echo off
set gvar="A"
setlocal
set gvar="a"
set lvar="b"
echo lvar=%lvar%, gvar=%gvar%
endlocal
echo lvar=%lvar%, gvar=%gvar%
运行结果是:
lvar="b", gvar="a"
lvar=, gvar="A"
网友评论