Board logo

标题: [其他] 一个判断进程是否存在的批处理的求助 [打印本页]

作者: yinhaolong    时间: 2015-1-19 14:09     标题: 一个判断进程是否存在的批处理的求助

运行c:\soft\ok.exe

判断进程是否存在OK.EXE  如果存在则等待,如果不存在了则继续运行后面的

运行c:\soft\soft.exe

判断进程是否存在soft.EXE  如果存在则等待,如果不存在了则继续运行后面的

这个实在不会写 清大家帮帮忙哈

下面是我原本的脚本
  1. @echo off
  2. ping 127.0.0.1 -n 15>nul
  3. rd c:\drivers /s /q
  4. start "" "c:\ok.exe"
  5. ping 127.0.0.1 -n 15>nul
  6. start "" "c:\soft.exe"
  7. ping 127.0.0.1 -n 60>nul
  8. copy c:\run.bat "C:\Documents and Settings\Administrator\「开始」菜单\程序\启动"
  9. shutdown -s -t 10
  10. del c:\soft.exe
  11. del c:\ok.exe
  12. del %0
  13. exit
复制代码
看能否优化一下  水平有限,只能写出这样的简易代码  每次soft还没有运行完成就开始执行后面的了
作者: ygqiang    时间: 2015-1-19 14:17

运行c:\soft\ok.exe

判断进程是否存在OK.EXE  如果存在则等待,如果不存在了则继续运行后面的

运行c: ...
yinhaolong 发表于 2015-1-19 14:09


:wait1
    先用tasklist 输入进程列表给find ,让find找出EXE进程,如果找到,那执行下面的操作。找不到就goto
tasklist|find /i "xxxx.EXE" ||goto :start1
goto ::wait1

:start1
xxx
xx
作者: GAGATOSHUT    时间: 2015-1-19 20:17

@echo off & color 0e
:1
echo 正在查找 ok.exe 进程...
ping 127.0.0.1 -n "3">nul
tasklist /nh|find /i "ok.exe"
  if ERRORLEVEL 1 (call :2) else (
   pause & call :1
  )
:2
cls
start "" "c:\soft\soft.exe" & exit
作者: yinhaolong    时间: 2015-1-20 01:02

回复 3# GAGATOSHUT


    谢谢,我放进去测试一下 刚开始学的弄批处理 好多地方搞不懂
作者: yinhaolong    时间: 2015-1-20 01:03

回复 2# ygqiang


    虽然没搞太懂,还是谢谢,看懂了一点点




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2