【WINDOWS / DOS 批处理】变量扩展与变量延迟扩展

本文详细介绍了Windows/DOS批处理中变量的扩展和延迟扩展原理。变量扩展是在命令解释执行前替换环境变量的过程,而变量延迟扩展则允许在“完整语句”内部或字符串操作中响应环境变量的动态变化。通过启用CMD.EXE的变量延迟扩展,可以在批处理文件中实现更灵活的变量处理。文中通过示例演示了这两种扩展的应用场景。
摘要由CSDN通过智能技术生成

 变量扩展        

变量扩展的过程大致如下:首先读入命令行的一条命令,在进行一些先期的预处理(例如:检查用户所输入的命令格式是否符合它的要求)之后,命令被解释执行之前,会对其中用百分号闭合的字符串( 例如:%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>

 变量延迟扩展

变量延时扩展的过程大致如下:首先读入命令行的一条命令,在进行一些先期的预处理(例如:检查用户所输入的命令格式是否符合它的要求)之后,命令被解释执行之前,对变量进行扩展,命令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值