中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 各位大大~偶新手提問~~ 上一主题 | 下一主题
Waterlive
初级用户





积分 52
发帖 21
注册 2007-2-9
状态 离线
『楼 主』:  各位大大~偶新手提問~~

偶新学批处理
     今天看到FOR循环,起了点念头,写了几句东西~
     功能是:检查所输入路径是否有TXT文件,有则启动命令行~
     写好后试了遍,输入:D:\更新……我在里面新建了个.txt,没问题
     于是,想想,再输入:D:\……结果一直打开cmd.exe,机子跨了~
     D盘虽然有很多的.txt,但不至于如此地步……
     然后尝试换G盘,里面只有1个.txt,结果也跨了~
     所以想问问,我这代码有什么问题麽?为何會出現這情况,算死循环嚒?

代码如下:
@echo off
echo 輸入路径
set /p p=">>"

for /r "%p%" %%i in (*.txt) do start cmd.exe
发完贴后才看到……貌似发错区了,应该发到批处理教室~抱歉斑竹

[ Last edited by Waterlive on 2007-5-14 at 05:38 PM ]

2007-5-14 17:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 2 楼』:  

To Waterlive:

你写的是带 /R 参数的 for 命令,查询for的帮助可以知道它可以遍历后面参数所指定的文件夹。如果你输入的文件夹里面有很多的txt文件,那么就会打开很多CMD窗口,简单点说就是假如你输入了的“D:\”下面有1000个txt文件,那么就打开1000个CMD窗口,而且打开的速度也很快,这样,机子自然承受不了而崩溃。

2007-5-14 18:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Waterlive
初级用户





积分 52
发帖 21
注册 2007-2-9
状态 离线
『第 3 楼』:  

to lxmxn:

當時我也是這麼想的~但是~~

  Quote:
然后尝试换G盘,里面只有1个.txt,结果也跨了~

G盤是備份……就1個.txt,是我測試時添加的~

[ Last edited by Waterlive on 2007-5-14 at 07:09 PM ]

2007-5-14 19:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
wangluo417
初级用户





积分 43
发帖 22
注册 2007-2-12
状态 离线
『第 4 楼』:  

希望你早日解决 并介绍下解决的方法,让我们小菜们学习学习

2007-5-14 22:48
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: