标题: [其他] 批处理如何使用call延迟变量? [打印本页]
作者: novaa 时间: 2007-11-16 21:06 标题: 批处理如何使用call延迟变量?
看帖子的时候发现call也可以延迟变量下面分别是两个延迟变量的方式
方式一- @echo off
- setlocal enabledelayedexpansion
- set num=0
- for /l %%a in (1 1 7) do (
- set /a num+=1
- echo !num!
- )
- pause
复制代码
方式二- @echo off
- set a=0
- for /l %%i in (1 1 7) do set /a a+=1 & call echo %%a%%
- pause>nul
复制代码
第一种方法基本明白了
第二种利用CALL的老手能否讲解一下
作者: novaa 时间: 2007-12-23 15:06
在执行莫些文本操作得时候。当必须使用变量延迟时,如果用setlocal enabledelayedexpansion 。那么要处理得文本中的!将会置空。所以这个时候用CALL延迟。
只是个人看法。
作者: youxi01 时间: 2007-12-23 16:37
还不够全
还有些情况是因为, !!不能嵌套使用
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |