中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-09 00:20
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 请问如何来检测一运行批处理程序的退出 查看 789 回复 4
楼 主 请问如何来检测一运行批处理程序的退出 发表于 2008-06-30 11:07 ·  中国 山东 电信
初级用户
积分 28
发帖 9
注册 2008-03-08 16:38
18年会员
UID 112397
性别 男
状态 离线
我有两个批处理A和B,用A来调用B运行,如何在A中判断B是否被关闭。
请指教,谢谢!
2 发表于 2008-06-30 11:18 ·  美国 惠普HP
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
start /wait b.bat
3 谢谢2楼的回答 发表于 2008-06-30 17:23 ·  中国 山东 电信
初级用户
积分 28
发帖 9
注册 2008-03-08 16:38
18年会员
UID 112397
性别 男
状态 离线
我是想用两个批处理a.bat和b.bat,运行a时a打开b,然后检测b是否被关闭,如果b被关闭,a继续运行b。
用start /wait b.bat
命令,当我关闭b时,a中会提示“终止批处理操作吗?”
而我的意思是,a最小化运行(最好隐藏运行),然后a检测到b被关闭后继续打开b

请各位给支个招,谢谢!
4 发表于 2008-06-30 18:22 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
假设a.bat b.bat的完整路径为c:\windows\temp

@echo off
tasklist|findstr "b.bat">nul||start /min b.bat

如要隐藏运行a.bat就加入系统任务中,用以下代码创建:

schtasks /create /ru system /tn test /tr c:\windows\temp\a.bat /sc minute /mo 1

注:一分钟运行一次

[ Last edited by zw19750516 on 2008-6-30 at 06:32 PM ]
批处理之家新域名:www.bathome.net
5 发表于 2008-06-30 19:10 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
tasklist检测不到a.bat进程的
正确方法
wmic Process Where "Name='cmd.exe'" Get CommandLine|findstr "b.bat">nul||start /min b.bat
第一高手 第二高手

论坛跳转: