验证计数器是否落在特定范围内

2024-03-29 15:50:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两秒间隔的计数器。你知道吗

  • 我需要确认计数应该在1200到1600之间。我们有没有办法不解析整个输出就可以做到这一点?

  • 如果在任何特定的时间间隔内,计数不在匹配范围内,则应打印一些错误/警告消息。

  • 有什么方法可以得到这个计数器的平均值吗?


# tshark -r q4-mme.pcap -qz io,stat,2,"COUNT(frame.time)frame.time"
===================================================================
IO Statistics
Interval: 2.000 secs
Column #0: COUNT(frame.time)frame.time
                |   Column #0
Time            |          COUNT
000.000-002.000              1241
002.000-004.000              1272
004.000-006.000              1315
006.000-008.000              1371
008.000-010.000              1195
010.000-012.000              1299
012.000-014.000              1305
014.000-016.000              1391
016.000-018.000              1463
018.000-020.000              1454
020.000-022.000              1392
022.000-024.000              1438
024.000-026.000              1362
026.000-028.000              1491
028.000-030.000              1392
030.000-032.000              1422
032.000-034.000              1425
034.000-036.000              1486
036.000-038.000              1449
038.000-040.000              1487
040.000-042.000              1402
042.000-044.000              1420
044.000-046.000              1330
046.000-048.000              1458
048.000-050.000              1420
050.000-052.000               144
===================================================================

请告诉我怎样才能达到预期的效果。你知道吗


Tags: 方法消息警告间隔timecount错误时间
1条回答
网友
1楼 · 发布于 2024-03-29 15:50:57

我不熟悉Python。但是这里有一个使用awk的尝试。您可以使用适当的系统命令从python调用它。你知道吗

验证计数范围在1200到1600之间

awk '( $1~/[0-9]+\.[0-9]+-[0-9]+\.[0-9]+/ && ($2<1200||$2>1600) ) {print $2}' file

输出:

1195
144

计算平均值

awk '$1 ~ /[0-9]+\.[0-9]+-[0-9]+\.[0-9]+/ {total+=$2; cnt++;} END {printf "Average = %.2f\n", total/cnt}' file

输出:

Average = 1339.38

相关问题 更多 >