【端口号清除工具】port is already in use解决利器,从此告别每次输入命令杀端口

156 阅读2分钟

🧑‍💻作者名称:DaenCode 🎤作者简介:啥技术都喜欢捣鼓捣鼓,喜欢分享技术、经验、生活。 😎人生感悟:尝尽人生百味,方知世间冷暖。 📖所属专栏:工具合集


在这里插入图片描述


@[toc]

🌟前言

在日常开发中,经常会因为启动、关闭tomcat操作不当或者在关闭IDEA时经常忘记暂停项目,又或者电脑卡顿,经常会导致port is already in use等端口号被占用的错误。 本文主要使用bat批处理语言,编写了一个bat脚本用来清除端口号。防止每次都输入命令进行清除,很浪费时间。


🌟效果预览

在这里插入图片描述


🌟脚本内容

@echo off & color 0A
title 端口号清除工具
echo===========================================================
echo===========================================================
echo===========================================================
echo =======================端口号清除工具=====================
echo =======================作者:DaenCode=======================
echo========================输入q退出工具=======================
echo===========================================================
echo===========================================================
:clear
set /p port=请输入被占用的端口号:
setlocal EnableDelayedExpansion
set pid=0
for /f "tokens=5" %%a in ('netstat -ano ^| findstr ":%port%" ^| findstr "LISTENING"') do (
	set pid=%%a 
)
	echo pid进程ID为:!pid!
	if "!pid!"=="0" (
	echo 端口号没有被占用
) else (
	taskkill /pid !pid! -t -f 
	echo  端口号相关进程已杀死                 
)
rem 退出
if "!port!"=="q" (
goto end
)
goto clear
pause
:end
exit


🌟脚本解释

命令解释
@echo off & color 0A关闭命令提示符的回显,并设置背景颜色为绿色和亮度为正常
title 端口号清除工具设置窗口标题为 "端口号清除工具"
echo===========================================================输出分隔线
echo =======================端口号清除工具=====================输出工具名称
echo =======================作者:DaenCode=======================输出作者信息
echo========================输入q退出工具=======================输出退出工具的提示信息
echo===========================================================输出分隔线
:clear定义一个标签 clear
set /p port=请输入被占用的端口号:提示用户输入被占用的端口号,并将输入的值保存到变量 port
setlocal EnableDelayedExpansion启用延迟变量扩展
set pid=0初始化变量 pid 为0
tokens=5每一行的第五列,这里代笔进程id那一列
echo pid进程ID为:!pid!输出进程ID
if "!pid!"=="0" ( echo 端口号没有被占用 ) else ( taskkill /pid !pid! -t -f echo 端口号相关进程已杀死 )如果进程ID为0,则输出端口号未被占用的提示信息;否则,使用 taskkill 命令杀死对应进程,并输出相关信息
if "!port!"=="q" ( goto end )如果用户输入的端口号为 "q",则跳转到标签 end,退出工具
goto clear跳转回标签 clear,继续执行清除操作
pause暂停脚本的执行
:end定义一个标签 end
exit退出脚本

🌟写在最后

感谢大家的观看,如有对脚本代码有问题或者修改意见的,欢迎大家在评论区讨论。同时也欢迎大家提出新的工具需求,有时间给大家写出来。


请添加图片描述