linux netstat命令
1. 说明
命令用于显示网络状态。
利用netstat指令可让你得知整个Linux系统的网络情况。
-a (all)显示所有选项,netstat默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。(重要)
-l 仅列出有在 Listen (监听) 的服務状态
-p 显示建立相关链接的程序名(macOS中表示协议 -p protocol)
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计 (重要)
-c 每隔一个固定时间,执行该netstat命令。
2.例子
# 查看端口占用
netstat -anpt | grep 8080
# 得到
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:18080 0.0.0.0:* LISTEN 18748/java
tcp6 0 0 :::8080 :::* LISTEN 16160/java
2.1 ls命令也可以查看端口占用
lsof -i:13581
# 得到
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
node 13581 root 11u IPv6 288148 0t0 TCP *:terabase (LISTEN)