【CALL命令格式】
格式一:call [ [Drive:] [Path] FileName [Pararneters] ]
格式二:call [:label [arguments] ]
使用call命令,可以调用 FileName(包括批处理文件、其它执行命令)或 :label 标签
【CALL命令的执行过程】
【格式一】call [ [Drive:] [Path] FileName [Pararneters] ]
第一步:第一次变量展开
读入“call [ [Drive:] [Path] FileName [Pararneters] ] ”整条命令,call命令被解释执行之前,先对其参数(即:“[ [Drive:] [Path] FileName [Pararneters] ] ”)进行变量展开操作,例如,如果 FileName 包含%myvar%,则%myvar%会被展开。
第二步:执行call命令
使用变量展开的结果作为参数执行call命令,在【格式一】中,call的命令功能是调用其参数所指定的命令(为描述简洁,这里称之为参数命令),这样,参数命令就被调用了。
第三步:第二次变量展开
参数命令被解释执行之前,先对自身命令格式进行变量展开操作
第四步:执行参数命令
使用变量展开的结果执行参数命令
下面举例说明:
1、展开 FileName 中的变量,这样的 FileName,通常被称为“嵌套命令”,示例如下:
<