精易论坛

标题: bat实现,当主进程结束时关闭副进程 [打印本页]

作者: 六度科技    时间: 4 天前
标题: bat实现,当主进程结束时关闭副进程

  
子程序名返回值类型公开备 注
进程关联 当主进程结束,副进程也会被结束
参数名类 型参考可空数组备 注
主进程名文本型
副进程名文本型多个用|隔开
变量名类 型静态数组备 注
副进程文本型 
副进程组文本型0
i整数型 
如果 (寻找文本 (副进程名, “|”, , ) ≠ -1)
副进程组 = 分割文本 (副进程名, “|”, )
计次循环首 (取数组成员数 (副进程组), i)
副进程 = 副进程 + “ /im ” + 副进程组 [i]
计次循环尾 ()
副进程 = “ /im ” + 副进程名

运行 (“cmd /c ”#引号@echo off & for /l %a in (0,0,1) do (tasklist | findstr /i /c:”#引号#引号 + 主进程名 + #引号#引号“ >nul || (taskkill /f” + 副进程 + “ >nul 2>&1 & exit) & ping 127.0.0.1 -n 1 >nul)”#引号, 假, 1)
' 脚本原文:
' @echo off
' :loop
' rem 检查a.exe进程是否存在
' tasklist /fi "imagename eq a.exe" | findstr /i "a.exe" > nul
' if errorlevel 1 (
' rem 如果不存在,关闭b.exe等进程并退出
' taskkill /f /im b.exe /im c.exe /im d.exe > nul 2>&1
' exit
' )
' rem 每隔1秒检测一次(可通过修改-n后的数值调整间隔)
' ping 127.0.0.1 -n 1 > nul
' goto loop



适用于调用别人的程序,例如API接口服务,当你自己的进程结束或者意外结束后避免被调用的进程残留。
经测试占用内存大概1.5M,我也写过powershll版本,占用内存太大就放弃了

作者: 六度科技    时间: 4 天前
关联自身和单个多个进程
  
进程关联 (取执行文件名 (), “b.exe”)
进程关联 (取执行文件名 (), “b.exe|c.exe”)


作者: KD飞飞    时间: 4 天前
感谢分享,十分有用
作者: imoling    时间: 4 天前
没太看懂,是只认进程名呢,还是有关联pid。那如果在程序中运行这个cmd,程序关闭,cmd是否会自动关闭。
作者: jysoft2022    时间: 4 天前
谢谢分享
作者: sostemp    时间: 4 天前
支持开源~!感谢分享
作者: pipicool    时间: 4 天前
学习一下
作者: kyo9766    时间: 4 天前
简单实用,感谢分享
作者: lassgo    时间: 4 天前
大神,请收下我的膝盖,膜拜你,真的很厉害!
作者: 1184798949    时间: 4 天前
感谢分享
作者: gdhong    时间: 4 天前
有价值的源码,谢谢分享!
作者: yangjia255    时间: 4 天前
有价值的源码,谢谢分享!
作者: 艾玛克138    时间: 4 天前
又学到技术了,谢谢老大
作者: 豆豆灰常开心    时间: 3 天前
全都是大佬~
作者: 查过    时间: 3 天前
感谢分享,很给力!~
作者: year1970    时间: 3 天前
感谢分享
作者: qqmqqg    时间: 3 天前
66666666666666666666666
作者: 一指温柔    时间: 3 天前
感谢分享,很给力!~
作者: lxn2wyf    时间: 3 天前
共同努力,共同进步,大家一起加油!
作者: wh1234567    时间: 3 天前
感谢分享
作者: 胖子葛格    时间: 3 天前
感谢大神分享~!
作者: wh1234567    时间: 前天 00:09
感谢分享
作者: 豆豆灰常开心    时间: 前天 07:09
感谢您对论坛的支持!
作者: 查过    时间: 前天 07:13
感谢您对论坛的支持!
作者: 一指温柔    时间: 前天 08:40
感谢分享
作者: 豆豆灰常开心    时间: 昨天 07:18
下个学习一下
作者: 查过    时间: 昨天 07:23
全都是大佬~
作者: wuqingg    时间: 昨天 08:23
感谢分享~~~~
作者: qq184252904    时间: 昨天 14:00
当主进程结束时关闭副进程




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4