![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-02 05:39 |
共 48,037 主题排行 / 350,122 发帖 / 今日 2 篇 / 48,250 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 这个问题是怎么回事呢? |
| 可打印版本 896 / 4 |
| 第1楼 wentimao | 发表于 2006-10-07 22:21 |
| 初级用户 发帖 27 积分 110 | |
|
这个问题是怎么回事呢? set num=0
echo %num% for %%p in ('dir /b *') do ( set /a num+=1 echo %num% ) echo %num% 现在的问题是,do里的echo显示的是0,而外面的echo可以正确显示累加的结果 ──────────────── 版务记录 ──────────────── 执行:namejm 原标题:这个问题是怎么回事呢 说明:因标题过于模糊,不便于论坛的搜索和管理,请在三日内修改标题。 提示:修改标题请在当前帖的右下脚点 编辑,修改完毕之后按 编辑帖子 即可。 处罚:因属论坛新人,暂时不予处罚;若三日之后尚未修改标题,将扣除4点积分, 以示惩罚,并由版主强制修改标题。请点击这里阅读论坛发帖规定,以避免在 今后的讨论中违规发帖。 ──────────────── 版务记录 ──────────────── [ Last edited by namejm on 2006-10-8 at 00:15 ] |
|
| 第2楼 NaturalJ0 | 发表于 2006-10-07 22:51 |
| 银牌会员 发帖 533 积分 1,181 | |
|
开头加上这句
setlocal enabledelayedexpansion 然后 DO 里面的 用%%包起来的变量,换成用!!包起来的变量。 |
|
| 第3楼 wentimao | 发表于 2006-10-07 23:06 |
| 初级用户 发帖 27 积分 110 | |
|
恩,问题解决,谢谢
|
|
| 第4楼 KIKOOOO | 发表于 2006-10-08 05:09 |
| 初级用户 发帖 12 积分 34 | |
|
上面的脚本是显示当前目录的文件个数吗?好像有点问题啊
|
|
| 第5楼 pengfei | 发表于 2006-10-08 05:27 |
| 银牌会员 发帖 485 积分 1,218 来自 湖南.娄底 | |
|
代码的确有问题:
1. 在for语句中使用命令结果的输出作为循环变量, 这里必须使用/f参数. 2. 这段代码为查找文件及文件夹. 如果查找文件请用"dir /a-d", 若搜索文件夹请用"dir /ad" |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |