[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 2个批处理合并成一个运行

本帖最后由 sxp3468 于 2017-3-11 19:26 编辑

有两个独立的批处理,想把它合并在一起,互不影响先后循环执行。新手求助如何合并成一个?

第一个:(每隔一段时间检测StudentMain.exe,若不存在,则启动它)
  1. :RESTART
  2. tasklist /FI "username eq administrator" | find /C "StudentMain.exe" > temp.txt
  3. set /p num= < temp.txt
  4. del /F temp.txt
  5. echo %num%
  6. if "%num%" == "0"   start /D "C:\Program Files (x86)\Mythware\极域课堂管理系统软件V6.0 2016 豪华版\" StudentMain.exe
  7. ping -n 30 -w 2000 0.0.0.1 > temp.txt
  8. del /F temp.txt
  9. goto RESTART
复制代码
第二个:(每隔一段时间检测WerFault.exe,若出现立即结束StudentMain.exe )
  1. @echo off
  2. :start
  3. rem
  4. ping 127.0.0.1 -n 20>nul
  5. tasklist|find /i "WerFault.exe"&&goto kill
  6. goto start
  7. :kill
  8. taskkill /im StudentMain.exe /f
  9. goto start
复制代码

  1. :RESTART
  2. tasklist /FI "username eq administrator" | find /C "StudentMain.exe" > temp.txt
  3. set /p num= < temp.txt
  4. echo %num%
  5. if "%num%" == "0"   start /D "C:\Program Files (x86)\Mythware\极域课堂管理系统软件V6.0 2016 豪华版\" StudentMain.exe
  6. taskkill /im StudentMain.exe /f 2>nul
  7. ping -n 30 -w 2000 0.0.0.1 > temp.txt
  8. goto RESTART
复制代码

TOP

回复 2# GNU


   没有 检测WerFault.exe进程了?

TOP

回复 3# sxp3468


    2楼第6行修改为:
  1. tasklist|find /i "WerFault.exe"&&goto kill
  2. goto RESTART
  3. :kill
  4. taskkill /im StudentMain.exe /f
复制代码

TOP

回复 3# sxp3468


    在逻辑上,你那个检测是多余的,反正都要杀掉,没有必要做那个判断。

TOP

本帖最后由 sxp3468 于 2017-3-12 12:12 编辑
回复  sxp3468


    在逻辑上,你那个检测是多余的,反正都要杀掉,没有必要做那个判断。
GNU 发表于 2017-3-12 10:56



   事情是这么回事:机房极域有问题 老是出错,脱离教师端失去控制, 我的想法是,检测到退出极域进程后重新启动它 恢复正常; 但实际操作中发现,极域出错时,会跳出windows错误报告(WerFault.exe),如果此时不手动退出这个错误报告对话框,极域就假死,进程依然还在,事实已脱离教师端失去控制,必须结束极域进程后才能再次检测重启极域程序,连上教师端。





多谢两位热心帮助,等上班后去试验一下,再来汇报。

TOP

返回列表