- 帖子
- 3
- 积分
- 15
- 技术
- 0
- 捐助
- 0
- 注册时间
- 2018-5-24
|
[文本处理] 【求助】监控系统进程是否运行,并写入txt启动时间和次数
win2008,有个进程常自己关闭,想写一个BAT,每隔10分钟检测系统进程里是否有该进程。
如有,则再继续监控,如没有,则启动该程序,并同时生成一个 txt 文件,将每一次的启动时间记录下来。
=========== 想象中的输出结果 ==========
2018年05月24日星期四9:09:50;启动第1次
2018年05月24日星期四9:11:01;启动第2次
2018年05月24日星期四9:11:08;启动第3次
2018年05月24日星期四9:11:27;启动第4次
2018年05月24日星期四9:11:40;启动第5次
2018年05月24日星期四9:11:53;启动第6次
2018年05月24日星期四9:12:25;启动第7次
2018年05月24日星期四9:14:29;启动第8次
2018年05月24日星期四11:55:22;启动第9次
2018年05月24日星期四11:56:28;启动第10次
...
如此类推
================================
附上自己写的代码:
---------------------------
@ECHO OFF
:check
tasklist > %temp%\tasklist.txt
find /i %temp%\tasklist.txt "admin.exe"
cls
if errorlevel 1 (goto st) else ((set a=6)&(goto show)) 脚本里的a=6是为了测试,将时间设为 6秒检测一次
:st
start D:\AutoUpdate\Client.exe 启动的程序路径
echo %date:~0,4%年%date:~5,2%月%date:~8,2%日星期%DATE:~-1%%time:~0,8%;启动第 ? 次 >> E:\Client_Logs.txt
cls
set a=6 脚本里的a=6是为了测试,将时间设为 6秒检测一次
goto show
:show
set /a a=a-1
ping -n 2 -w 500 127.1>nul
cls
echo.
echo 请勿关闭本窗口
echo\
echo.
echo.
echo.
echo 后台服务已经运行,10分钟后再检测!! 倒计时:%a% 秒
if %a%==0 (goto check) else (goto show)
------------------------------------------------------
我已经实现了某一行的前半部分功能, 如:2018年05月24日星期四11:56:28
后半功能就不懂搞了: 启动第10次... (这个次数会随着启动该程序的次数而递增的。。。)
请各位高手解答。谢谢!!! |
|