Batch命令关闭指定标题栏的应用程序窗口

Batch命令关闭指定标题栏的应用程序窗口

应用场景:
当前用户会话中打开了多个窗口,需要关闭其中某个标题栏包含指定内容的窗口。比如,打开了多个Java应用程序,而只想关闭Apache JMeter。注:这里的关闭是指通过taskkill杀死相应的进程。

脚本:
@echo off
for /f "tokens=2,10,11 delims= " %%l in ('tasklist /v') do (
 
    echo "%%l - %%m"
      if "%%m%%n" == "Apache JMeter" taskkill /f /PID %%m
      if "%%m" == "PACS.jmx" taskkill /f /PID %%l
)

说明:
1. tasklist /v 会将当前运行的进程的详细信息打印出来,其中包含“窗口标题”。
2. for /f "tokens=2,10,11 delims= " 将tasklist /v打印出的每条记录通过空格分组并提出其中的第2,10,和11项
------下面是个有应用体会--------------------
1. 2, 10, 11, 会自动赋给 %%l, %%m, %%n变量
2. 我觉得正确代码是:
@echo off
for /f "tokens=2,10 delims= "%%l in ('tasklist /v') do (
    if "%%m" == "要关闭的应用程序的标题" taskkill /f /PID %%l
)

你可能感兴趣的:(Batch命令关闭指定标题栏的应用程序窗口)