中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-06-13 23:59
中国DOS联盟论坛 » DOS学习入门 & 精彩文章 (教学室) » 各位大大~偶新手提問~~
楼 主 各位大大~偶新手提問~~ 发表于 2007-05-14 17:35 ·  中国 广西 梧州 电信
初级用户
积分 52
发帖 21
注册 2007-02-09 11:24
UID 79057
性别 男
状态 离线
偶新学批处理
今天看到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 ]
2 发表于 2007-05-14 18:23 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
UID 59080
状态 离线
To Waterlive:

你写的是带 /R 参数的 for 命令,查询for的帮助可以知道它可以遍历后面参数所指定的文件夹。如果你输入的文件夹里面有很多的txt文件,那么就会打开很多CMD窗口,简单点说就是假如你输入了的“D:\”下面有1000个txt文件,那么就打开1000个CMD窗口,而且打开的速度也很快,这样,机子自然承受不了而崩溃。
3 发表于 2007-05-14 19:08 ·  中国 广西 梧州 电信
初级用户
积分 52
发帖 21
注册 2007-02-09 11:24
UID 79057
性别 男
状态 离线
to lxmxn:

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

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


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

[ Last edited by Waterlive on 2007-5-14 at 07:09 PM ]
4 发表于 2007-05-14 22:48 ·  中国 云南 昆明 电信
初级用户
积分 43
发帖 22
注册 2007-02-12 09:17
UID 79295
性别 男
状态 离线
希望你早日解决 并介绍下解决的方法,让我们小菜们学习学习
论坛跳转: