中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 如何依次执行多个批处理 上一主题 | 下一主题
bluesky000
新手上路





积分 3
发帖 3
注册 2009-7-28
状态 离线
『楼 主』:  如何依次执行多个批处理

现在我有一个程序,它是调用其它程序的,并且是多个程序调用。现在的情况是前一个程序还没执行完,后面的程序就开始执行了,请问下该如何修改能使程序1个1个的执行?

调用.cmd
call D:\batch\Switch\dutswitch_T5581-01.cmd
call D:\batch\Switch\dutswitch_T5581-02.cmd
call D:\batch\Switch\dutswitch_T5581-03.cmd
rem call F:\batch\switch\T5581-04\T5581-04.cmd
rem call F:\batch\switch\T5581-05\T5581-05.cmd
call D:\batch\Switch\dutswitch_T5581-06.cmd
rem call F:\batch\switch\T5581-07\T5581-07.cmd
call D:\batch\Switch\dutswitch_T5581-08.cmd
call D:\batch\Switch\dutswitch_T5581-09.cmd
call D:\batch\Switch\dutswitch_T5581-10.cmd
rem call D:\batch\Switch\dutswitch_T5581-11.cmd
rem call F:\batch\switch\T5581-12\T5581-12.cmd
rem call D:\batch\Switch\dutswitch_T5581-13.cmd
call D:\batch\Switch\dutswitch_T5593-01.cmd
call D:\batch\Switch\dutswitch_T5593-02.cmd
call D:\batch\Switch\dutswitch_T5593-03.cmd
call D:\batch\Switch\dutswitch_T5593-04.cmd
call D:\batch\Switch\dutswitch_T5593-05.cmd
rem call F:\batch\switch\T5593-06\T5593-06.cmd
call D:\batch\Switch\QT5585-01.cmd
call D:\batch\Switch\QT5585-02.cmd
call D:\batch\Switch\dutswitch_UT560-01.cmd
call D:\batch\Switch\dutswitch_UT560-02.cmd
call D:\batch\Switch\dutswitch_UT560-03.cmd
call D:\batch\Switch\dutswitch_UT560-04.cmd
call D:\batch\Switch\dutswitch_UT560-05.cmd


2009-7-30 00:07
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 2 楼』:  

1,最稳妥的方法:将这些批处理合并到一个批处理中。
2,如果各个子批处理中不含call命令和变量延迟,可以使用start /w /b替代父批处理中的call命令。



批处理之家 http://bbs.bathome.net/forum-5-1.html
2009-7-30 10:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xswdong
中级用户





积分 216
发帖 129
注册 2007-2-14
状态 离线
『第 3 楼』:  

在我的印象中 命令行没有这样的功能,无法判断程序是否已经结束
可以考虑用start 加延时来实现
start 1.exe
ping 127.1 -n3
start 2.exe
ping 127.1 -n 2
start 3.exe
要是嫌ping占资源 在论坛上找延时工具
延时时间 设置成程序运行完毕后时间

2009-8-5 00:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lovelymorning
初级用户





积分 131
发帖 72
注册 2008-2-24
状态 离线
『第 4 楼』:  

start可以等待调用的程序结束后,再继续执行下一行命令的

而start对于批文件来说,是没用的,因为它最后调用的,还是cmd,而当前窗口不退出,进程中仍然还有cmd的存在,所以,用 start是行不通的

但是,用 call 是可以的,,,只是,你要在每个文件里面,都设置一个,让cmd返回到原来批文件的语句

这样,cmd才不会弄

2009-8-11 12:31
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: