中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-05 18:37
48,039 主题排行 / 350,124 发帖 / 今日 2 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » [求助]有关for中变量延迟的使用问题
可打印版本  812 / 6
第1楼 icyheart 发表于 2007-09-06 11:47
中级用户 发帖 81 积分 216
[求助]有关for中变量延迟的使用问题
set a=c d e f g h i j k l m n o p q r s t
for %%k in (%a%)do if exist %%k: call :drive %%k
:drive
for /r %1:\ %%i in (*.mp3) do echo %%i>>c:\1.txt

大家看看这段代码要是用变量延迟的方法该怎么表达呢?

[ Last edited by icyheart on 2007-9-6 at 01:56 PM ]
第2楼 flamemperor 发表于 2007-09-06 15:42
初级用户 发帖 29 积分 66
我是菜鸟,别笑话我啊 。

你是想把c d e f g h i j k l m n o p q r s t盘里所有的.mp3文件写道c:\1.txt里面是么?
第3楼 icyheart 发表于 2007-09-06 15:48
中级用户 发帖 81 积分 216
对是这个意思,但是我要用变量延迟表示
第4楼 flamemperor 发表于 2007-09-06 16:06
初级用户 发帖 29 积分 66
对批处理本身就很菜了。
对那个变量延迟更是不太理解,我也在写个批处理,也用了变量延迟,但总不太好使。
比如:
setlocal EnableDelayedExpansion
set var=5

for /r %%b......
set var=%%~nb

后面引用var的时候还是5,我也不太懂了,就当帮你顶好了
第5楼 knoppix7 发表于 2007-09-06 17:06
银牌会员 发帖 634 积分 1,287 来自 cmd.exe
貌似这个BAT根本用不到变量延迟
第6楼 icyheart 发表于 2007-09-06 19:50
中级用户 发帖 81 积分 216
是,不用也行,但是我想用变量延迟表达,该怎么弄呢
第7楼 ThinKing 发表于 2007-09-14 10:50
中级用户 发帖 207 积分 471
Originally posted by icyheart at 2007-9-6 07:50 PM:
是,不用也行,但是我想用变量延迟表达,该怎么弄呢

想在 For /R 里用变量延迟是不大可能滴,换个思路吧。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023