中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-12 21:32
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS批处理 & 脚本技术(批处理室) » 批处理判断进程
可打印版本  1,030 / 3
第1楼 leiling2007 发表于 2009-12-25 17:07
新手上路 发帖 3 积分 2
批处理判断进程
@echo off
:cx
tasklist>1.txt
type 1.txt|find "Christmas day.exe">2.txt
set /p c=<2.txt
set a=%c:~0,17%
echo %a%>1.txt
set /p b=<1.txt
if not "%b%"=="Christmas day.exe" goto gb
if "%b%"=="Christmas day.exe" goto cx
:gb
echo 进程不存在
del 1.txt
del 2.txt
pause

我这样来循环判断Christmas day.exe进程时,当先Christmas day.exe,之后,再打开这个文件,然后关闭Christmas day.exe后,发现不会跳转到“进程不存在”这。我要一直检测这个进程,当这个进程退出后就跳转执行另一条命令,该怎么做啊?
第2楼 mountvol 发表于 2009-12-25 18:34
初级用户 发帖 117 积分 186
第3楼 mountvol 发表于 2009-12-25 18:40
初级用户 发帖 117 积分 186
如果进程名中包含空格,则findstr应加上/c参数:tasklist | findstr /ic:"aa aa.exe">nul && call :success || call :failure
更严谨一点应该加上/r和^:
tasklist | findstr /irc:"^aa aa.exe">nul && call :success || call :failure
第4楼 zxh17173 发表于 2009-12-25 19:27
初级用户 发帖 20 积分 33

一个简单的循环判断进程的方法...
我自己一直用这个...
技术烂 写不出好代码..

[ Last edited by zxh17173 on 2009-12-25 at 19:33 ]
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023