Windows根据TCP端口号查找进程PID再kill进程(1)

Windows环境下,有时候TCP端口莫名其妙的被占用,导致正常的网络端口绑定失败,比如Android开发中,adb无法识别,有时候原因就是端口被占用。Java开发中,端口在占用情况下若再次绑定则抛异常:

错误提示:

java.net.BindException: Address already in use: JVM_Bind

at java.net.DualStackPlainSocketImpl.bind0(Native Method)

at java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:106)

at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387)

at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:190)

at java.net.ServerSocket.bind(ServerSocket.java:375)

at java.net.ServerSocket.(ServerSocket.java:237)

at java.net.ServerSocket.(ServerSocket.java:128)

此时可使用dos命令找到TCP端口号被那些进程占用,然后根据该进程的PID将其kill。

假设我起了一个程序占用本地端口9999,那么如何找到9999端口被什么进程占用,进而kill掉这个进程呢?

具体步骤如下:

(第一步)使用dos命令:

netstat -a -b -o

显示当前计算机所有端口被占用情况。其中,-a  –b  –o 参数的意义:

-a 显示所有连接和侦听端口。

-b 显示在创建每个连接或侦听端口时涉及的

可执行程序。在某些情况下,已知可执行程序承载

多个独立的组件,这些情况下,

显示创建连接或侦听端口时

涉及的组件序列。在此情况下,可执行程序的

名称位于底部 [] 中,它调用的组件位于顶部,

直至达到 TCP/IP。注意,此选项

可能很耗时,并且在你没有足够

权限时可能失败。

-o 显示拥有的与每个连接关联的进程 ID。

命令:

netstat -a -b -o

也可以合并为:

netstat -abo

结果相同。

(第二步)上一步输出的结果很多,如果有时间和精力,可以逐个用肉眼筛查,但是更智能化的方式是用命令筛查:

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助

因此我收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!**](https://bbs.csdn.net/topics/618165277)

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值