|
gotomsdos
铂金会员
C++启程者
积分 5154
发帖 1827
注册 2003-7-18
状态 离线
|
『楼 主』:
能在98的FOR中把两个命令连起来吗?在线!
下面只能分开执行:
for %%1 in (c d e f) do command1 %%1
for %%1 in (c d e f) do command2 %%1
能把上面两个命令连起来执行吗?98的
|
|
2004-1-20 00:00 |
|
|
roy
管理员
專業島民
积分 4869
发帖 1633
注册 2002-12-10
状态 离线
|
|
2004-1-21 00:00 |
|
|
gotomsdos
铂金会员
C++启程者
积分 5154
发帖 1827
注册 2003-7-18
状态 离线
|
『第
3 楼』:
嘿嘿! 好, 我试试,要不要加 /f ,
是98 哦
[此贴子已经被作者于2004-1-21 10:07:40编辑过]
|
|
2004-1-21 00:00 |
|
|
willsort
元老会员
Batchinger
积分 4432
发帖 1512
注册 2002-10-18
状态 离线
|
『第
4 楼』:
Re roy:
独立的DOS和98的DOS方式均不支持循环嵌套。可以改用以下的用法:
for %%a in (command1 command2) do %comspec% /c for %%b in (c d e f) do %%a %%b
[此贴子已经被作者于2004-1-26 21:29:52编辑过]
|
※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得! |
|
2004-1-26 00:00 |
|
|
gotomsdos
铂金会员
C++启程者
积分 5154
发帖 1827
注册 2003-7-18
状态 离线
|
『第
5 楼』:
非常感谢两位, ROY斑竹,尤其是WILLSORT!
斑竹提醒了我括号中可用命令集,WILLSORT解决了我的疑惑,使我理解了 在DOS 中的COMMAND /C
谢谢了!
|
|
2004-2-2 00:00 |
|
|
xiaojun
银牌会员
积分 2202
发帖 499
注册 2003-6-12
状态 离线
|
『第
6 楼』:
Quote: | 以下是引用willsort在2004-1-26 21:29:28的发言:
Re roy:
独立的DOS和98的DOS方式均不支持循环嵌套。可以改用以下的用法:
for %%a in (command1 command2) do %comspec% /c for %%b in (c d e f) do %%a %%b
[此贴子已经被作者于2004-1-26 21:29:52编辑过] |
|
请问一下:这个%comspec% 是DOS的command.com的变量吗?
|
一年四季,枫叶红了又红;人生四季,失去的,还能再来吗?—— ! |
|
2004-2-3 00:00 |
|
|
gotomsdos
铂金会员
C++启程者
积分 5154
发帖 1827
注册 2003-7-18
状态 离线
|
『第
7 楼』:
当然是啦! 用变量能绝对保证不出错
|
|
2004-2-3 00:00 |
|
|
xiaojun
银牌会员
积分 2202
发帖 499
注册 2003-6-12
状态 离线
|
『第
8 楼』:
哦,对对对,当然是啦,俺忘了某些时候用到的set comspec=...了; 您这里的报证不出错没有理解,能大概说下用变量与直接用可能引起的错误与区别吗? 谢谢
[此贴子已经被作者于2004-2-4 13:45:37编辑过]
|
一年四季,枫叶红了又红;人生四季,失去的,还能再来吗?—— ! |
|
2004-2-3 00:00 |
|
|
willsort
元老会员
Batchinger
积分 4432
发帖 1512
注册 2002-10-18
状态 离线
|
『第
9 楼』:
Re xiaojun:
%comspec%由系统自动赋值,直接引用即可,不需set。
|
※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得! |
|
2004-2-3 00:00 |
|
|
gotomsdos
铂金会员
C++启程者
积分 5154
发帖 1827
注册 2003-7-18
状态 离线
|
『第
10 楼』:
有新问题出现了!dos7.10的嵌套bug
willsort老兄你好!
在DOS7。10的命令行下,当前目录是C:,C:有三个TXT文件:1.txt,2.txt,3.txt.D:也有三个TXT文件,4.txt,5.txt,6.txt. 我要比较它们。键入
for %1 in (*.txt) do command /c for %2 in (d:\*.txt) do fc %1 %2>>abc
问题出现了:abc的内容为:
1.txt 比 4.txt
。。。。。。。。。(正常)
1.txt 比 5.txt
找不到文件 5.txt(当前目录是C:,所以,这个时候,它把d:\5.txt算作是c:\5.txt,所以找不到!也就是说,FOR循环命令中,第二次就忽略了d:\,而算作在当前目录!!)
1.txt 比 6.txt
同样找不到文件 6.txt。。。以下同理。。。
就是说,FOR循环中,第一轮正常,后面就出错了!
不过,我是在命令行下的,批处理还没试,应该一样吧
第二,用%comspec% /c 代替command /c时,说语法错误,奇怪!!
怎么回事?
另,在的xp的命令行中,没有这个问题, 一切正常。
[此贴子已经被作者于2004-6-13 下午 05:03:20编辑过]
|
|
2004-6-13 00:00 |
|
|
willsort
元老会员
Batchinger
积分 4432
发帖 1512
注册 2002-10-18
状态 离线
|
『第
11 楼』:
Re gotomsdos:
我无法复现你所发现的问题。我所使用的环境是安装了本站MS-DOS7.1的
Win98DOS方式,同样在C盘和D盘的根各创建了如上三个文本文件,使用了以下的命令行用法,均得到预想的结果。
1,FOR %1 IN (*.TXT) DO COMMAND /C FOR %2 IN (D:\*.TXT) DO FC %1 %2>> E:\ABC.TXT
2,FOR %1 IN (*.TXT) DO %COMSPEC% /C FOR %2 IN (D:\*.TXT) DO FC %1 %2>> E:\ABC.TXT
请再复查一遍你的运行环境以及文本文件的存在和属性。
|
※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得! |
|
2004-6-14 00:00 |
|
|
Wengier
系统支持
“新DOS时代”站长
积分 27734
发帖 10521
注册 2002-10-9
状态 离线
|
『第
12 楼』:
willsort:MS-DOS 7.10完整版下既能启动Win3.x,又能启动Win95以及Win98,所以不应只说成是Win98的。我知道Win98自带的DOS通常是不能做到启动Win3.x的,没有那么纯。
gotomsdos:请注意一下LFNFOR命令的设置。将LFNFOR设为OFF试试,看有没有那个所谓的“BUG”。
|
Wengier - 新DOS时代
欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/
E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)
|
|
2004-6-14 00:00 |
|
|
gotomsdos
铂金会员
C++启程者
积分 5154
发帖 1827
注册 2003-7-18
状态 离线
|
『第
13 楼』:
感谢两位回复!
willsort:谢谢你试了!各方面数据没错的。
Wengier: 好,我再按照您的提示试一试!
|
|
2004-6-16 00:00 |
|