Board logo

标题: [文件操作] 批处理如何实现进程不存在的话,就删除某些文件然后重新启动? [打印本页]

作者: heike045    时间: 2020-4-3 10:10     标题: 批处理如何实现进程不存在的话,就删除某些文件然后重新启动?

  1. @echo off
  2. rem 定义需监控程序的进程名和程序路径,可根据需要进行修改
  3. set AppName=qq.exe
  4. set AppPath=C:\anzhuang\Tencent\QQ\Bin\
  5. title 进程监控
  6. cls
  7. echo.
  8. echo 进程监控开始……
  9. echo.
  10. rem 定义循环体
  11. :startjc
  12.    rem 从进程列表中查找指定进程
  13.    rem  下面语句也可写成 qprocess %AppName% >nul (经验发布后补充)
  14.    qprocess|findstr /i %AppName% >nul
  15.    rem 变量errorlevel的值等于0表示查找到进程,否则没有查找到进程
  16.    if %errorlevel%==0 (
  17.          echo ^>%date:~0,10% %time:~0,8% 程序正在运行……
  18.     )else (
  19.            echo ^>%date:~0,10% %time:~0,8% 没有发现程序进程
  20.            echo ^>%date:~0,10% %time:~0,8% 正在重新启动程序
  21.            start %AppPath%%AppName% 2>nul && echo ^>%date:~0,10% %time:~0,8% 启动程序成功
  22.    )
  23.    rem 用ping命令来实现延时运行
  24.    for /l %%i in (1,1,10) do ping -n 1 -w 1000 168.20.0.1>nul
  25.    goto startjc
  26. echo on
复制代码

作者: heike045    时间: 2020-4-3 10:39

有大神吗????????????
作者: Batcher    时间: 2020-4-3 10:55

回复 1# heike045


echo ^>%date:~0,10% %time:~0,8% 正在重新启动程序
REM 删除某个文件
del /f /q "C:\test.txt"

作者: heike045    时间: 2020-4-3 10:58

回复 3# Batcher

是这样子吗?
           echo ^>%date:~0,10% %time:~0,8% 正在重新启动程序
REM 删除某个文件
del /f /q "C:\t.txt"
           start %AppPath%%AppName% 2>nul && echo ^>%date:~0,10% %time:~0,8% 启动程序成功

   )
作者: Batcher    时间: 2020-4-3 11:12

回复 4# heike045


    请测试一下吧,遇到问题咱们再讨论。
作者: heike045    时间: 2020-4-3 11:23

回复 5# Batcher


    请教一个问题,能否加下Q?
作者: Batcher    时间: 2020-4-3 11:32

回复 6# heike045


    请加微信群或QQ群 http://bbs.bathome.net/thread-3473-1-1.html




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