【Linux】汇总TCP网络连接状态命令

输入命令:
netstat -na | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

显示:

让我们逐步解析这个命令:

netstat -na:
netstat 是一个用于显示网络连接、路由表、接口统计等信息的命令。
-n 选项表示输出地址和端口以数字格式显示,而不是尝试将它们转换为主机名或服务名。
-a 选项表示显示所有活动的连接(包括监听和非监听的套接字)。

awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}':
awk 是一个强大的文本处理工具,可以用来搜索、替换和打印文件中的模式。
'/^tcp/' 是一个正则表达式,它匹配所有以 "tcp" 开始的行,这通常意味着它在筛选出TCP协议的连接。
**{++S[$NF]}** 这部分代码的作用是计数。$NF 是当前行的最后一个字段,在 netstat -na 的输出中通常是连接状态(如 "TIME_WAIT", "ESTABLISHED", "LISTEN")。每遇到一个状态,就将其作为数组 S 的键,并增加该键对应的值。

END 关键字表示当输入文件的所有行都被处理完毕后,执行后面的大括号内的命令。

{for(a in S) print a, Sa} 遍历数组 S 中的所有键(即连接状态),并打印每个状态及其出现的次数。

最终,这段命令的输出显示了以下信息:

TIME_WAIT 状态的连接有 1059 个

ESTABLISHED 状态的连接有 600 个

LISTEN 状态的连接有 15 个

相关推荐
灯琰110 小时前
STM32F4+W5500 移植与开发常见问题
网络
运维大师10 小时前
【Linux运维极简教程】06-网络配置与管理
linux·运维
IpdataCloud11 小时前
跨区服玩家延迟高怎么办?用IP离线库自动分配到最近服务器
数据库·tcp/ip·github·php·ip
qyr678911 小时前
全球新能源汽车电机驱动器市场深度调研报告
大数据·网络·人工智能·自动化·汽车
Hiyajo pray12 小时前
SDN 访问控制性能调优方法
服务器·网络·网络安全
初晴融雪-快雪时晴12 小时前
网络硬件全景梳理:从光纤到手机,一张网是如何连接的?
网络·智能手机·智能路由器
探索云原生12 小时前
终于搞懂 Kueue:5 个核心对象一次讲透
linux·docker·ai·云原生·kubernetes
辣椒思密达12 小时前
AI出海产品本地化测试:住宅IP在模拟海外用户环境中的实践价值
网络协议·tcp/ip·安全·php·苹果vision pro
huainingning13 小时前
交换机通过ftp下载文件或者传输文件到ftp服务器
运维·服务器·网络
An_s13 小时前
机器学习python之识别图中物品信息
java·linux·开发语言