当某个进程达到两个了,怎么用批处理关掉其中一个?

来源:百度知道 编辑:UC知道 时间:2024/05/29 14:55:46
当某个进程达到两个了,怎么用批处理关掉其中一个?但要让另外一个进程正常运行,最好是结束后面打开的那个。

比如说有一个游戏的主进程是1.exe,当发现系统开了第二个1.exe进程的时候,要把第二个开的1.exe强制结束掉,但还要让第一个能运行。

或者发现系统开了第二个1.exe进程的时候,强制关掉第一个和第二个。

当然如果能达到第一种效果更好。

@echo off&SETLOCAL enabledelayedexpansion
:start
set a=0
tasklist>1.txt
for /f "tokens=1,2 delims= " %%i in (1.txt) do (
if "%%i" equ "NOTEPAD.EXE" set /a a+=1 & if !a! neq 1 taskkill /pid %%j
)
ping 127.0.0.1 -n 10
CLS
goto :start

上例是以结束NOTEPAD.EXE为例,你可以手动更改。