You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用单条命令提取tshark输出中指定HTTP项的Count列?

单条命令提取多目标HTTP统计值

当然可以用单条命令一次性提取所有你需要的Count值,不用反复执行awk!这里有两种实用的方案:

方案1:简洁匹配,直接输出对应行

利用awk的正则匹配功能,用|分隔多个目标关键词,一次捕获所有目标行并提取Count列:

tshark -q -r dump.pcap -Y http -z http,tree | awk '/HTTP Request Packets|SEARCH|NOTIFY|HTTP Response Packets/ {print $1, $2}'

这个命令会输出类似这样的结果:

HTTP Request Packets 120
SEARCH 15
NOTIFY 8
HTTP Response Packets 118

方案2:自定义输出格式,更易读

如果希望输出的结果更清晰,能直接对应每个统计项的含义,可以给awk加多个条件分支,自定义输出文本:

tshark -q -r dump.pcap -Y http -z http,tree | awk '
/HTTP Request Packets/ {print "HTTP 请求包总数:", $2}
/SEARCH/ {print "SEARCH 请求数:", $2}
/NOTIFY/ {print "NOTIFY 请求数:", $2}
/HTTP Response Packets/ {print "HTTP 响应包总数:", $2}
'

执行后会得到更直观的输出:

HTTP 请求包总数: 120
SEARCH 请求数: 15
NOTIFY 请求数: 8
HTTP 响应包总数: 118

小提示

这里用$2提取Count值是基于你当前tshark输出的字段位置,如果后续tshark的输出格式有变化,也可以试试用$NF取每行最后一个字段(要是Count始终在末尾的话),适配性更强。

内容的提问来源于stack exchange,提问作者mg9893

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:42:56