如何通过端口杀掉占用进程

找了一些资料,写了个通过端口杀掉占用进程的bat文件

@echo off & setlocal EnableDelayedExpansion
:: (4200,58008)为待杀掉的端口
for %%a in (4200,58008) do (
    set pid=0
    for /f "tokens=2,5" %%b in ('netstat -ano ^| findstr ":%%a"') do (
        set temp=%%b
        for /f "usebackq delims=: tokens=1,2" %%i in (`set temp`) do (
            if %%j==%%a (
                taskkill /f /pid %%c
                set pid=%%c
                echo Port number [%%a] related process has been killed
            ) else (
                echo The port is not occupied by the machine [%%a]
            )
        )
    )
    if !pid!==0 (
       echo Port number [%%a] is not occupied
    )
)
:: 通过端口杀掉占用的进程
pause

BAT文件中如何注释:
1、:: 注释内容(第一个冒号后也可以跟任何一个非字母数字的字符)
2、rem 注释内容(不能出现重定向符号和管道符号)
3、echo 注释内容(不能出现重定向符号和管道符号)〉nul
4、if not exist nul 注释内容(不能出现重定向符号和管道符号)
5、:注释内容(注释文本不能与已有标签重名)
6、%注释内容%(可以用作行间注释,不能出现重定向符号和管道符号)
7、goto 标签 注释内容(可以用作说明goto的条件和执行内容)
8、:标签 注释内容(可以用作标签下方段的执行内容)

各位大佬,不足之处,多多批评指正,不胜感激!

posted @ 2021-10-20 11:14  浪潮行舟  阅读(132)  评论(0编辑  收藏  举报