macos系统下查看端口号并杀死端口号所在的进程

问题描述

今天启动项目一个执行机,报了一个Port already in use的异常。
在这里插入图片描述

解决问题

端口占用一般解决思路就是拿到端口占用进程号,然后kill一下这个进程号即可。
Linux环境下或者macos可以借助于lsof命令解决这个问题,首先什么是lsof命令?

  • lsof
    lsof(list open files)是一个列出当前系统打开文件的工具,我们都知道在Unix中一切都是可以由文件进行描述的,直接输入lsof命令输入如下所示:
    在这里插入图片描述

lsof输出各列信息的意义如下:

  1. COMMAND:进程的名称 PID:进程标识符
  2. USER:进程所有者
  3. FD:文件描述符,应用程序通过文件描述符识别该文件。如cwd、txt等
  4. TYPE:文件类型,如DIR、REG等
  5. DEVICE:指定磁盘的名称
  6. SIZE:文件的大小
  7. NODE:索引节点(文件在磁盘上的标识)
  8. NAME:打开文件的确切名称

通过上面的输出列我们可以查询到PID从而解决我们上面遇到的问题,其常用的命令格式如下

lsof -i tcp:port

参数说明:使用-i显示所有连接,tcp只显示tcp的链接信息,port可以填入实际想要查询的端口号。通过这个查询到PID然后kill掉进程即可解决端口占用的问题。

猜你喜欢

转载自blog.csdn.net/javaee_gao/article/details/105383170
今日推荐