Windows下实现Deamon守护脚本
2016-08-16 10:44
239 查看
最近需要在Windows服务器上保持程序长期允许,因为程序比较老,无法用srvany.exe 改写成windows服务,只能自己手动编写守护脚本实现,网上找了短比较靠谱的守护脚本,在此mark一下。支持监视进程、端口。
守护脚本定义部分
执行部分
使用Script方式启动并隐藏CMD窗口
--------------------------------------------------------------------------------------
- 版权声明:
- 如在本页面内无特别说明,本文内容均为[李大仁博客]原创,本文版权归[李大仁博客]所有。
- 欢迎转载,转载请务必在文章页面明显位置提供原文链接并注明出处。欢迎您在转载本文时保留本段声明。
- 文章标题: Windows下实现Deamon守护脚本
- 独立博客:李大仁博客
- 永久链接:http://www.lidaren.com/archives/1656
--------------------------------------------------------------------------------------
以上内容由博客自动发布工具自动发布,最终显示内容和效果会与原文内容有所偏差,敬请谅解。
守护脚本定义部分
@echo off ::检测时间间隔,单位:秒 set _interval=5 ::需要守护的进程名称 set _processName=ProcessName ::需要守护的进程启动命令 set _processCmd=C:\xxxx.exe ::需要守护的进程预估启动完毕所需时间,单位:秒 set _processTimeout=10 ::需要守护的进程所监听的端口 set _port=8080 ::进程用户名,一般是Administrator set _username=Administrator
执行部分
@echo off :LOOP set /a isAlive=false ::通过进程名称检测 ::tasklist /FI "username eq %_username%" | find /C "%_processName%" > temp.txt ::set /p num= < temp txtbr>::del /F temp.txt ::通过进程的端口是否正在被监听检测 netstat -an | find /C "0.0.0.0:%_port%" > temp.txt set /p num= < temp txtbr>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
使用Script方式启动并隐藏CMD窗口
set ws=WScript.CreateObject("WScript.Shell") ws.Run "guard.bat",0
--------------------------------------------------------------------------------------
- 版权声明:
- 如在本页面内无特别说明,本文内容均为[李大仁博客]原创,本文版权归[李大仁博客]所有。
- 欢迎转载,转载请务必在文章页面明显位置提供原文链接并注明出处。欢迎您在转载本文时保留本段声明。
- 文章标题: Windows下实现Deamon守护脚本
- 独立博客:李大仁博客
- 永久链接:http://www.lidaren.com/archives/1656
--------------------------------------------------------------------------------------
以上内容由博客自动发布工具自动发布,最终显示内容和效果会与原文内容有所偏差,敬请谅解。
相关文章推荐
- [Linux]使用SSH-KEY方式登录SSH
- [iOS]objective-c AES/DES/3DES等加密算法实现
- nginx php error log 配置 查找500 错误
- Java 输入输出流的一些理解
- Linux文件批量转编码iconv命令
- [VBS]文件批量转编码
- [iOS] 实现IIF功能和DECODE函数功能
- JDBC简单学生管理系统
- Linux nc出现protocol not available错误
- WSDL
- svn之黄色感叹号处理方法
- [Ruby] 更换GEM的source镜像
- Spinner的二级联动
- eclipse新建maven工程pom文件报错解决
- Settings
- [iOS]Xcode7.0关闭Bitcode编译
- 【STL】非变异算法之查询
- 数据结构实验之图论四:迷宫探索
- C#入门8.8——方法的重载
- 安装HomeBrew提示已安装并无法卸载