【bat】【windows】通过端口杀死进程

简单的bat处理,把指定端口集合杀死相应的进程,就是杀死对应的pid

@echo off & setlocal EnableDelayedExpansion

set obj[0]=6340
set obj[1]=6330
set obj[2]=1010
set obj[3]=6301
set obj[4]=6001

set port=0
set pid=0

for /f "usebackq delims== tokens=1-2" %%a in (`set obj`) do (
    set port=%%b
    for /f "tokens=5" %%m in (‘netstat -aon ^| findstr ":%%b"‘) do (
        set pid=%%m
    )
    if "!pid!"=="0" (
        echo 端口号【!port!】没有占用
    ) else (
        echo 端口号【!port!】相关进程以杀死
        taskkill /f /pid !pid!
    )
    set pid=0
)

pause

运行结果

1、一个端口都没有被占用情况

2、有一个6001端口被占用情况

讲解

bat是没有数组的,

set obj[0]=6340
set obj[1]=6330
set obj[2]=1010
set obj[3]=6301
set obj[4]=6001

可以看做事5个变量

第一个for循环【for /f "usebackq delims== tokens=1-2" %%a in (`set obj`) do (】就是从环境中拿去变量obj开头的,有多少个就遍历多少遍,再通过=切割【delims==就是用=切割】

tokens=1-2就是拿去第一二列,%%a就是循环的变量开始【可以不是a,也可以是i】,那么%%a就是例如obj[0],%%b就是例如6001

第二个for循环【for /f "tokens=5" %%m in (‘netstat -aon ^| findstr ":%%b"‘) do (】就是从netstat -aon这个查所有端口占用情况中发现【^| findstr ":6001“】:6001这一行数据,这行数据第5列【"tokens=5"】就是pid

杀死pid【taskkill /f /pid !pid!】



原文地址:https://www.cnblogs.com/xiaostudy/p/11674053.html

时间: 2024-11-02 15:41:23

【bat】【windows】通过端口杀死进程的相关文章

windows下批量杀死进程

有时候由于病毒或其他原因,启动了一系列的进程,并且有时杀了这个,又多了那个.使用命令taskkill可将这些进程一下子全部杀光: C:\Users\NR>taskkill /F /im frontpg.exe 成功: 已终止进程 "FRONTPG.EXE",其 PID 为 3732. 成功: 已终止进程 "FRONTPG.EXE",其 PID 为 24544. 成功: 已终止进程 "FRONTPG.EXE",其 PID 为 3612. 错误

windows查看端口被进程占用

这个问题主要是来源于曾经因为jdk环境不佳导致tomcat经常挂,挂了以后再启又导致端口占用错误,因此总结了一篇,目的是为了查看端口所占用的进程,然后杀进程,解决端口占用错误问题: 在windows命令行窗口下执行: C:\>netstat -aon|findstr "1527",然后查看输出结果,如下图: 看到了吗,端口被进程号为5852的进程占用,继续执行下面命令: C:\>tasklist|findstr "5852" ,查看结果如下图: 很清楚吧

windows查看端口占用进程并关闭

以端口8080为例: 1.查找对应的端口占用的进程:netstat  -aon|findstr  "8080"    ,找到占用8080端口对应的程序的PID号: 2.根据PID号找到对应的程序:tasklist|findstr "PID号"    ,找到对应的程序名 3.结束该进程:taskkill /f /t /im 程序名 参考自:http://blog.csdn.net/superit401/article/details/51501166

cmd批处理bat命令根据端口号一键关闭杀死对应进程程序

目录 cmd批处理bat命令根据端口号一键关闭杀死对应进程程序 使用场景和功能介绍 主界面 下载地址 源代码 @(cmd批处理bat命令根据端口号一键关闭杀死对应进程程序) cmd批处理bat命令根据端口号一键关闭杀死对应进程程序 使用场景和功能介绍 java开发者eclipse中启动多次启动tomcat时8080端口无法及时关闭可能需要此批处理. windows上打开nginx.exe调试时不容易关闭时,可以使用此批处理关闭80端口即可. 代码原理根据端口号netstat -aon | fin

Windows中杀死某个端口的进程

最近写项目,总是出现端口被占用的问题,原来傻傻的把电脑重启一下,终于有一天受不了了,想要想办法解决.刚开始从网上找了好多教程,发现不行.开始自己尝试,终于,成功的将占用端口的进程杀掉.在此记录下过程(以8080端口为例): 第一步,打开cmd命令窗口,输入命令,根据端口号查找对应的进程号 netstat -ano | findstr 80 //列出进程极其占用的端口,且包含 80 1 结果如下:  发现 8080 端口被 PID(进程号)为 9268 的进程占用. 第二步, 据进程号寻找进程名称

windows查看和杀死占用端口的进程

1.首先使用 netstat -ano查看占用端口的进程号 2.然后使用 taskkill /PID (进程号)杀死进程 原文地址:https://www.cnblogs.com/zhuzhaoli/p/10185090.html

windows查看端口占用的进程和杀死进程

1通过端口查进程 idnetstat -ano | findstr "LISTENING"| findstr ":10000" 2.通过进程查应用(图为百度网盘的子程序) tasklist |findstr "2708" 3.通过进程id杀死进程 taskkill /f /t /im “2708” 原文地址:https://www.cnblogs.com/jkwll/p/10813719.html

centos(linux) 下如何查看端口占用情况及杀死进程

使用这个命令:netstat -nap [[email protected] sphinx]# netstat -nap Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name 杀死进程 使用kill命令结束进程:kill XXX   常

八、端口占用,杀死进程

windows环境: 1.netstat -aon | findstr "占用的端口号" 2.通过查询到的PID,查看占用端口的进程 tasklist | findstr "11556" 3.杀死进程 taskkill /pid  11556 linux环境: 原文地址:https://www.cnblogs.com/mason117/p/10498957.html