【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 个

相关推荐
骑着蜗牛撵大象3274 分钟前
从三次握手到 epoll:C++ 写出可落地的 TCP Socket 服务端
网络·c++·tcp/ip·高并发·tcp·epoll
qq_377572777 分钟前
typora install linux ubuntu
linux·ubuntu
比兔代理25 分钟前
静态 IP 的粘性会话原理,以及连接稳定性解析
网络·网络协议
John_Hui27 分钟前
CentOS7安装Nginx
linux·服务器·nginx
qetfw28 分钟前
Bash 基础:脚本执行、引号与命令替换验证
linux·开发语言·chrome·bash
怪力左手28 分钟前
cuda-toolkit离线安装
linux·运维·人工智能
无人生还别怕35 分钟前
如何搭建k8s服务(docker部署)
linux·运维·docker·云原生·容器·kubernetes·openanolisos
Lsetea37 分钟前
curl下载HTTPS正文是乱码:--compressed与Content-Encoding分层排查
linux·http·https·ssl证书·curl
硅基手札1 小时前
操作系统设计思想系列 05 · RTOS 核心矛盾 — 资源受限 × 时间确定性的设计决策树
linux·mcu·架构·操作系统·嵌入式开发·rtos·设计思想
程序员-Benothing1 小时前
Linux磁盘管理教程:MBR、GPT、fdisk、parted分区实战
linux·运维·服务器