中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 批处理中是不是会屏蔽掉下面的FOR 语句?
作者:
标题: 批处理中是不是会屏蔽掉下面的FOR 语句? 上一主题 | 下一主题
sevensecond
初级用户





积分 41
发帖 14
注册 2007-12-22
状态 离线
『楼 主』:  批处理中是不是会屏蔽掉下面的FOR 语句?

请问 windows中 批处理 是不是会屏蔽掉一些for 语句 ?

如下 :
在 CMD命令提示符中 输入
for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1

可以正常运行, 我们知道这个语句是用来重新加载*.dll 的。没有什么特别之处。
可是 为什么 把以上 语句放入 批文件*.bat 中 ,双击运行 就运行不出效果呢 ?
在命令提示符中输入以上命令时候,可以看到 dll 一个个被重载了,运行大概1分多钟,可是双击该命令写成的批处理文件时候,命令提示符一闪就没有了。dll没有重载成功,是不是for命令被屏蔽了呢 ?
在批处理文件中又该怎么使得以上 命令能够 和 在 CMD命令提示符中单独输入运行  时候的效果一样 ?
在用其他类似 这样的 for命令时,我在批处理文件中也没有运行出来。
请 版主,各前辈 指教。
给予例子(最好能用以上语句),谢谢!

2008-1-26 01:05
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 2 楼』:  

批处理中的for命令需要把一个百分号变成两个百分号

2008-1-26 01:09
查看资料  发短消息 网志   编辑帖子  回复  引用回复
sevensecond
初级用户





积分 41
发帖 14
注册 2007-12-22
状态 离线
『第 3 楼』:  谢谢2楼热心解答,问题已经得到解决。

谢谢2楼热心解答,问题已经得到解决。
for %%1 in (%windir%\system32\*.dll) do regsvr32.exe /s %%1

2008-1-26 01:32
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: