【Windows本地端口占用脚本自动化】

本文介绍了一个脚本,用于在IDEA因停电或内存问题导致退出时,自动检测并关闭占用的端口,避免手动kill进程的繁琐。脚本通过`netstat`和`taskkill`命令管理Java微服务的端口冲突。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本地启动多个Java微服务,因为停电或者内存回收原因,IDEA直接退出;再次启动各个服务会提示端口占用。

每次都cmd输入命令手动Kill比较繁琐,可以把此脚本放在桌面上作为一个小工具,运行即可。

运行效果

代码(核心部分是chatGPT自动生成)

@echo off
REM 关闭命令回显,这意味着命令本身不会显示在命令提示符窗口中,只有命令的输出会显示
rem 命令开启了局部变量环境,并启用了延迟变量扩展,使得在循环或代码块内部更改的变量可以立即使用其新值。
setlocal enabledelayedexpansion

REM 定义要查找的端口列表,用空格分隔
set /p PORTS="enter the port numbers, separated by spaces: "
echo your input are: %PORTS%

REM 循环通过每个端口
for %%p in (%PORTS%) do (
	REM 使用netstat找到对应端口的PID,然后使用taskkill杀掉进程
	for /f "tokens=5" %%a in ('netstat -ano ^| findstr "LISTENING" ^| findstr ":%%p"') do (
		set PID=%%a
		REM 杀掉对应PID的进程
		taskkill /PID !PID! /F
			REM 输出被杀掉的进程信息
			if !errorlevel! equ 0 (
				echo Successfully killed process with PID !PID! on port %%p
			) else (
				echo Failed to kill process with PID !PID! on port %%p
			)
	)
)
endlocal
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值