今天有个东西,想做个进程守护,保持持续连接,本来想用ProcessLasso,但是人家是收费的,并且是做进程管理的。
无奈,只能找找其他解决方案。

发现bat也可以实现进程守护,找了找,找到了一个:
windows下bat批处理实现守护进程(有日志) - jack_Meng - 博客园
windows下bat批处理实现守护进程(有日志) - jack_Meng - 博客园

写得非常全,但是我不需要日志的功能,所以将大神的bat批处理做了简化:

@echo off
title SunloginKeeper
cls
::设置待执行软件完整路径
set runAppPath="D:\Program Files\Oray\SunLogin\SunloginClient\SunloginClient.exe"
::设置时间间隔,单位:秒
set _interval=10
::自赋值参数
set runAppFolder=''
set _processName=''
set _processNameExt=''
if '%runAppPath%'=='' (goto end)for %%a in (%runAppPath%) do (
set runAppFolder=%%~dpa
set _processName=%%~na
set _processNameExt=%%~nxa
)
::echo %runAppPath%
::echo %runAppFolder%
::echo %_processName%
::echo %_processNameExt%
goto checkstart:checkstart
::检查进程是否还在
for /f "tokens=1" %%n in ('tasklist.exe ^| find /I "%_processNameExt%" ') do (
if '%%n'=='%_processNameExt%' (goto checkend)
):startApp
::重新启动进程
pushd %runAppFolder%
::显示启动信息
echo %date:~0,10% %time:~0,8%: %runAppPath%
::如果程序直接启动
start "" %runAppPath%
::如果程序需要参数,用下面的方法启动
start %runAppPath% -paramKey=paramValue
popd:checkend
::循环检查
choice /t %_interval% /d y /n >nul
goto checkstart:end
echo end.

我对窗口显示无所谓,如果不想显示窗口,可以参考以下文章:

怎么让bat运行不显示窗口-百度经验
https://jingyan.baidu.com/article/4ae03de3564d457efe9e6b2a.html

Windows下使用bat批处理文件实现进程守护相关推荐

  1. windows下利用.bat批处理文件来创建以当前时间命名的文件夹

    分享一下利用批处理文件创建以当前时间命名文件夹的命令 单位测试环境发新包的时候总会需要把旧包备份一下,每次手动创建文件夹太麻烦了,干脆写个批处理文件来创建 命令如下: @echo off set NO ...

  2. windows下用bat命令自动设置ip地址和dns

    windows下的.bat文件或者.cmd文件都可以直接双击执行,里面写的批处理命令可以帮助我们方便的处理一些事情. 比如我经常到实验室去上课,实验室的有线网络需要设置本地ip地址,而在宿舍是需要DH ...

  3. windows 下终止指定端口的进程

    windows 下终止指定端口的进程 一 . 查看端口内占用情况 netstat -aon|findstr "9050"协议 本地地址 外部地址 状态 PIDTCP 127.0.0 ...

  4. WIndows下cmd报错退出进程,代码为1

    WIndows下cmd报错退出进程,代码为1 不知道什么原因出现了这种情况 参考微软官方回答(https://answers.microsoft.com/zh-hans/windows/forum/a ...

  5. Windows下如何查看被占用进程及结束进程?

    Windows下如何查看被占用进程及结束进程? 查找所有运行的端口命令:netstat -ano 查找被占用端口对应的PID:netstat -aon|findstr "2990" ...

  6. mysql怎样在bat脚本中添加日志_如何在windows下用bat脚本定时备份mysql

    作/译者:叶金荣(Email: ),来源:http://imysql.cn,转载请注明作/译者和出处,并且不能用于商业用途,违者必究. 并不是所有MySQL都运行在Linux下,windows下也需要 ...

  7. Windows下使用taskkill 命令结束进程

    在windows 下,最常使用的结束进程的方法就是打开任务管理器,找到相应的进程, 选择后点击 "结束进程" 按钮. 但是如果任务管理器被禁用或者批量结束多个进程时,是使用task ...

  8. linux cron 进程查询,Linux下通过配置Crontab实现进程守护

    我们在实际运维过程中,经常会出现某一个程序(如tomcat,perl等)的进程无缘无故就在服务器上消失了,这样的话第一我们需要投入精力去分析它为什么会消失,第二还需要配置相关检查人员,比较耗费时间. ...

  9. windows下用bat文件启动带参数的bat文件的方法

    背景: 在windows下想启动zookeeper和kafka,无奈每次都要打开两个cmd,先切换到zk和kafka的目录,然后敲一大长串的命令执行,挺费事的,所以想写个脚本去完成一键启动. 使用以下 ...

最新文章

  1. 自学python转行-转行学习python 需要多久?应该如何学习?
  2. MyEclipse 7.5优化
  3. 使用GDI+缩放图片文件
  4. c# 自定义控件使其填充方格且自动变换大小
  5. HashSet源码解析
  6. 教育孩子的一个很棒的方式
  7. Boost:bind绑定的测试自定义占位符
  8. c++ Segmentation fault (core dumped) 的一个实例
  9. 嵩天-Python语言程序设计程序题--第三周:基本数据类型
  10. php yii model,Yii模型
  11. pidgin-qq可以使用QQ2012协议了
  12. fedora操作系统优缺点_不同类型的操作系统的优缺点
  13. Asp.Net MVC 体验 2 持久层的构建
  14. Hystrix入门与分析(一):初识Hystrix
  15. java 泛型 上限_Java 泛型通配符上限和通配符下限
  16. 台达DVP-PLC编程资料
  17. 西门子软件测试教程 博客,西门子视频教程合集
  18. 可转债第三课:如何赚取可转债的高收益
  19. SLT学习(一)——STL组成介绍
  20. 获取手机WiFi Ip地址

热门文章

  1. 基于Sobel算子的图像边缘检测
  2. C语言分数参与运算的表达式
  3. delphi多线程设计
  4. linux国产操作系统下载网站,三分钟快速安装国产操作系统Ylmf OS
  5. 没想到锤子坚果R1的投屏功能,还可以这么强大!
  6. 西安文理学院的计算机科学与技术,西安文理学院计算机科学与技术专业
  7. 错误 LNK1104 无法打开文件“boost_thread-vc142-mt-gd-x64-1_79.lib”
  8. JavaScript之undefined的加(+)、减(-)、乘(*)、除(/)和取模(%)运算
  9. 百分之九十的程序员都掌握的C#技巧
  10. C++解析AVI文件格式学习总结