set p=程序A 程序B 程序C 程序D
set t=10
:begin
for %%i in (%p%) do (
tasklist|findstr /i %%i.exe||start d:\%%i.exe
ping -n %t% 127.1>nul)
goto begin
##上面批处理说明在同一个目录下检查几个进程服务是否开启,没有开启的就启动该进程
@echo off #这个是不显示出来
set #设置变量
:begin #这里设置一个begin在后面有个goto begin 这样就能够循环回到上面
tasklist |findstr /i #查询已经启动的进程,参数/i:不区分大小写
ping -n %t% 127.1>nul #这里能够设置延时至关linux中的sleep功能
备:还有能够使用net start功能
net start(stop) NSClientpp 启动服务(NSClientpp是服务名,且服务是自动的)
sc config NSClientpp start= demand 将服务设为自动(但未启动)
如:tasklist|findstr /i **.exe || net start ***(这个是**.exe的服务名)