变量扩展
变量扩展的过程大致如下:首先读入命令行的一条命令,在进行一些先期的预处理(例如:检查用户所输入的命令格式是否符合它的要求)之后,命令被解释执行之前,会对其中用百分号闭合的字符串( 例如:%myVar% )进行匹配,如果在环境空间中找到了与该字符串( 例如:myVar )相匹配的环境变量,则用其值替换掉原字符串及百分号本身,如果未得到匹配,则用一个空串替换(批处理文件中)或者原样输出(DOS命令行环境中),这个过程就是变量的“扩展”。
示例
::demo.bat
@echo off
echo begin%var1%end
echo begin%var2%end
运行
C:\out>set var1=first // 定义var1变量
C:\out>set var2= // var2变量如果之前存在,则取消
C:\out>demo
beginfirstend
beginend
C:\out>
变量延迟扩展
变量延时扩展的过程大致如下:首先读入命令行的一条命令,在进行一些先期的预处理(例如:检查用户所输入的命令格式是否符合它的要求)之后,命令被解释执行之前,对变量进行扩展,命令