提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 前言
- 脚本
前言
前因:某个核心功能 瞬时数据量大导致jar包崩溃,经常晚上崩溃,没有办法及时发现导致数据丢失,上网查询资料自费8毛8下载了个 bat守护自启动文件,结果差强人意。故多方寻找找到此文件,测试成功符合预取,so免费分享。
提示:以下是本篇文章正文内容,下面案例可供参考
一、脚本
示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。
@echo off
::检测时间间隔,单位:秒
set _interval=30
::需要守护的进程名称
set _processName=(自己起名字)
::需要守护的进程启动命令
::set _processCmd=java -Dfile.encoding=utf-8 -jar D:\java\video.jar(这个是我的启动
jar包命令)
set _processCmd=(填你的启动命令)
::需要守护的进程预估启动完毕所需时间,单位:秒
set _processTimeout=30
::需要守护的进程所监听的端口(填jar包的端口)
set _port=7003
::进程用户名,一般是Administrator(下面不用改,会写的随便)
set _username=Administrator
:LOOP
set /a isAlive=false
::通过进程名称检测
::tasklist /FI "username eq %_username%" | find /C "%_processName%" > temp.txt
::set /p num= < temp.txt
::del /F temp.txt
::通过进程的端口是否正在被监听检测
netstat -an | find /C "0.0.0.0:%_port%" > temp.txt
set /p num= < temp.txt
del /F temp.txt
if "%num%" == "0" (
start %_processCmd% | echo 启动 %_processName% 于 %time%
choice /D y /t %_processTimeout% > nul
)
if "%num%" NEQ "0" echo 已启动
::ping -n %_interval% 127.1>nul
choice /D y /t %_interval% >nul
goto LOOP
总结
提示:八毛八的教训,根据此文章编写windows下bat批处理实现守护进程(有日志) - jack_Meng - 博客园 (cnblogs.com)