天天看点

【批处理命令BAT】一键关闭占用指定网络端口的进程

文章目录

  • ​​命令简介​​
  • ​​代码版本1​​
  • ​​代码版本2​​
  • ​​后续​​

命令简介

Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。

netstat      
netstat -ano | findstr 11005      

代码版本1

@echo off
set port=11005
for /f "tokens=1-5" %%i in ('netstat -ano^|findstr ":%port%"') do ( 
echo %%i %%j %%k %%l %%m

if "%%m" == "" (
TASKKILL /PID %%l /F
) else (
TASKKILL /PID %%m /F
)

)      

代码版本2

@echo off

set port=11005
set /P port="请输入要关闭的端口,默认11005:"
echo 开始搜索'netstat -ano^|findstr ":%port%" '
 
for /f "delims=" %%i in ( 'netstat -ano^|findstr :%port%' ) do set pid_line=%%i 
rem set pid=%pid_line:~-6%

if "%pid_line%" == "" (
echo 没有找到!
goto flag_exit
) else (
echo 已查找到: %pid_line%
for %%a in (%pid_line%) do (set pid=%%a)
)

echo 占用端口%port%的进程pid:%pid%;现在开始结束它
TASKKILL /PID %pid% /F
:flag_exit
pause
exit;      

继续阅读