通常通过进程名称或者端口号来判断进程是否正在运行。但是windows下进程名常常难以区分,比如有两个python脚本程序A和B同时在执行,进程名都是python.exe。若是通过端口来区分,却又只适用带有端口监听的程序,比如某进程监听6379,可能该端口被很多程序同时监听。怎么做到细化守护呢?只有把要监听的程序打包成exe程序,windows一般以exe程序名作为进程名,每个程序分别取不同的exe名称即可。

守护脚本如下:

@echo off
echo superVisord start...
for /f "tokens=1,2 delims==" %%i in (config.txt) do (
set %%i=%%j
echo 变量%%i值为%%j
tasklist | find /i %%i.exe || start "" cmd /k %%j
)
echo superVisord stop...
exit

配置文件config.txt里面是要监听的程序名称和执行命令路径:

pay_exe=python E:\work\pay_exe.exe

可以将守护脚本加入开机/计划任务,或者修改为循环执行每n秒检测一次。

windows守护进程脚本的更多相关文章

  1. Windows守护进程简单示例

    转载: https://blog.csdn.net/kikaylee/article/details/51395360 /* @描述:一个简单的Windows守护进程的例子(C++版本) @作者:ki ...

  2. 【转】Windows守护进程的一种简单实现

    一讲到守护进程,很多人都想到了Linux系统,确实在Windows上这个说的比较少.今天上午群里有个朋友问我了下Windows下守护进程的实现问题,我想了想,简单用C++写了个小例子,用来实现系统开机 ...

  3. java进程的守护进程脚本

    当jar程序执行异常中断时,希望系统能够自动启动.通过以下shell脚本监控程序一直运行. #/bin/bash while true; do count=`ps -ef | grep test.ja ...

  4. windows 守护进程

    use Win32::Process::Info; while (1==1){ use Sys::Hostname; use HTTP::Date qw(time2iso str2time time2 ...

  5. java 的守护进程脚本

    #!/bin/sh ] do Tag=`ps -ef|grep 'jar包名称'|grep -v grep|wc -l|awk '{printf $1"\n"}'` ] then ...

  6. linux 创建守护进程的相关知识

    linux 创建守护进程的相关知识 http://www.114390.com/article/46410.htm linux 创建守护进程的相关知识,这篇文章主要介绍了linux 创建守护进程的相关 ...

  7. php程序守护进程

    php命令程序实习守护进程2种方式: 1.使用nohup nohup php myprog.php > log.txt & 2.使用程序 function daemonize() { $ ...

  8. Windows 和 Linux 上Redis的安装守护进程配置

    # Windows 和 Linux 上Redis的安装守护进程配置 Redis 简介 ​ Redis是目前最常用的非关系型数据库(NOSql)之一,常以Key-Value的形式存储.Redis读写速度 ...

  9. shell脚本(管理守护进程)

    工作中常常会遇到处理消息队列的消费者进程,这样的进程是一个守护进程,即一个服务.服务通常写个shell脚本来管理,查询服务的status  ,启动start 关闭stop  重启reload.最近在学 ...

随机推荐

  1. BulkSqlCopy 批量导入数据(Ef支持)

    Ado.net对批量数据的支持相信大家都已经非常熟悉.再此就不在多说,就当是给自己备个份,没办法,这个方法太好用了. public static void BulkCreate( string tab ...

  2. 01.Sencha ExtJS 6 - Generate Workspace and Application

    生成workspace         下载gpl版本的ExtJs6         在https://www.sencha.com/legal/GPL/页面的右侧申请链接来下载,或者使用链接http ...

  3. 使用HTML5新支持的搭建WebRtc环境来作为视频通讯

    发现如果再重新设计这块的话,又会有不同的思路.对于可定位能力,我们可以全息日志采集,将每个用户在整个系统的走向异步的抓取下来,再同步到专门的日志分析系统,在这个系统中可以根据用户号码.订单号进行过滤分 ...

  4. windows电脑优化

    电脑磁盘已用99% 100%解决办法_百度经验 禁用superfetch服务 链接:http://jingyan.baidu.com/article/046a7b3edeea38f9c37fa911. ...

  5. http 错误 500.21

    出现这个错误一般都是.net Framework 在iis中安装错误 这个时候需要重新安装iis .netframework 4.0框架 我的解决方案如下: 在cmd中以管理员身份运行->%wi ...

  6. C语言乱谈(一) 20行代码生成BMP

    在学习图形图像的过程中,最简单和常见的格式是BMP和PPM.下面将给出生成BMP的极度精简代码,然后讲解BMP格式. #include <stdio.h> #include <std ...

  7. ACM算法模板

    旧版模板下载链接: here 新版的模板目前不提供电子版,正在抽时间做一些修正以及添加一些新内容. 新模板如有需要纸质版的,可以自付打印费进行打印.购买链接:https://weidian.com/i ...

  8. 【BZOJ3123】森林(主席树,启发式合并)

    题意:一个带点权的森林,要求维护以下操作: 1.询问路径上的点权K大值 2.两点之间连边 n,m<=80000 思路:如果树的结构不发生变化只需要维护DFS序 现在因为树的结构发生变化,要将两棵 ...

  9. myeclipse中如何导入mysql-connector-java-5.1.8-bin.jar【环境配置和工具使用】

    前提:我建立了一个java project,工程名字为Test,现在需要连接mysql数据库,所以提前从网上将java操作mysql数据库的mysql-connector-java-5.1.8-bin ...

  10. C#中的?和??的用法

    1. 可空类型修饰符(?):引用类型可以使用空引用表示一个不存在的值,而值类型通常不能表示为空.例如:string str=null; 是正确的,int i=null; 编译器就会报错.为了使值类型也 ...