文章目录
1、Windows
1.1 使用netstat命令
win+R
调出命令窗口(或者开始 -- 运行 -- cmd
)- 查找被占用端口进程的PID
netstat -aon | findstr 15203
,即用到netstat
,并用findstr
进行查找
- 查找PID对应的进程名
tasklist | findstr 37596
完整的过程如下所示:
1.2 通过工具查看 – Process Hacker 2
另外推荐一个网络开发中经常用到的工具:Process Hacker 2,可以看到本地所有的端口占用情况以及协议,见下:
工具从网上就可以找到,自己也分享了一个,可以直接获取:【Process Hacker 2–百度云】 密码: aul3
2、Linux
2.1 使用netstat命令
-
1、打开终端
-
2、查找被占用端口进程的PID,以下以 15203 端口为例
netstat -nap | grep 15203
,即使用neststat
命令,并用grep
进行查找
-
3、查找PID对应的进程名
ps -ef | grep 1396
-
4、使用
sudo ls -al /proc/PID
显示某个进程路径等信息
完整过程如下图所示:
其实这里细心可以发现,netstat -nap
的结果中已经包含了进程名(进程名信息不完整),如下1所示。
2.2 使用lsof命令 – 支持Mac
- 使用
lsof + grep
命令即可实现,eg:lsof -i | grep 15203
(15203为端口)- lsof: list open files
- 该命令在连接比较多时,会比较慢,同时关于进行信息显示不完整,可以再使用
sudo ls -al /proc/PID
命令显示某个进程路径等详细信息- Mac下不支持
sudo ls -al /proc/PID
命令,解决方法参考:【Get list of open files (descriptors) in OS X】
- Mac下不支持