mac系统netstat命令使用可能会受限。建议使用lsof进行操作。

lsof(list open files):主要用于列出当前系统打开的所有文件的工具。打开的文件可以是
-** 普通文件
-** 目录
-** 块文件
-** 字符特殊文件
-**网络文件系统的文件
-**(函数)共享库
-**管道,命名管道
-**符号链接
-**网络文件(例如:NFS file、网络socket,unix域名socket)
-**还有其它类型的文件,等等

直接lsof,出现许多的打开的文件:

1 COMMAND     PID USER   FD      TYPE             DEVICE     SIZE       NODE NAME
2 init          1 root  cwd       DIR                8,2     4096          2 /
3 init          1 root  rtd       DIR                8,2     4096          2 /
4 init          1 root  txt       REG                8,2    43496    6121706 /sbin/init
5 init          1 root  mem       REG                8,2   143600    7823908 /lib64/ld-2.5.so
6 init          1 root  mem       REG                8,2  1722304    7823915 /lib64/libc-2.5.so

命令参数:
-a 列出打开文件存在的进程
-c<进程名> 列出指定进程所打开的文件
-g 列出GID号进程详情
-d<文件号> 列出占用该文件号的进程
+d<目录> 列出目录下被打开的文件
+D<目录> 递归列出目录下被打开的文件
-n<目录> 列出使用NFS的文件
-i<条件> 列出符合条件的进程。(4、6、协议、:端口、 @ip )
-p<进程号> 列出指定进程号所打开的文件
-u 列出UID号进程详情
-h 显示帮助信息
-v 显示版本信息
使用

sudo lsof -nP -iTCP:端口号 -sTCP:LISTEN

-n 表示不显示主机名,-P 表示不显示端口俗称,不加 sudo 只能查看以当前用户运行的程序,可以后接管道符 sudo lsof -nP -iTCP grep ‘8080’

原文:https://blog.csdn.net/pandafxp/article/details/53748031