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

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

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

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

java 复制代码
@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
相关推荐
jerryinwuhan28 分钟前
LINUX复习资料(二)
linux·运维·服务器
私域讲解师1 小时前
RPA是什么?企业如何借助有赞平台实现订单与会员自动化
自动化·rpa
学习的周周啊1 小时前
一人AI自动化开发体系(Cursor 驱动):从需求到上线的全流程闭环与实战清单
运维·人工智能·自动化·ai编程·全栈·devops·cursor
qq_312920112 小时前
从零搭建企业级DevOps流水线
运维·devops
川石课堂软件测试2 小时前
全链路Controller压测负载均衡
android·运维·开发语言·python·mysql·adb·负载均衡
一枚正在学习的小白2 小时前
PG数据文件位置迁移
linux·运维·服务器·数据库
1白天的黑夜14 小时前
Linux (5)| 入门进阶:Linux 权限管理的基础规则与实践
linux·运维·服务器·centos
超龄超能程序猿4 小时前
Docker 镜像的导出和还原操作
运维·docker·容器
维尔切4 小时前
Docker 监控平台部署
运维·docker·容器·grafana·prometheus