我有下表,如何计算仅 11 月份记录的字节总和?例如下面我想查找 11 月的行,然后将第 4 列中与 11 月相关的数字相加?我怎样才能做到呢?
1 arnold user 1933 Nov 7 13:05
2 megan user 10809 Nov 7 13:03
3 sam user 983 Apr 13 12:14
4 mark user 31869 Jun 15 12:20
5 sandy user 22414 Nov 7 13:03
6 semon user 37455 Nov 7 13:03
7 andre user 27511 Dec 9 13:07
8 jim user 7989 Nov 7 13:03
答案1
您可以尝试awk
如下:
awk '$5 == "Nov" { sum += $4 }END { print sum }' file
80600
$5 代表与月份相关的列。$5 == "Nov"
将过滤表中 11 月份的所有记录,然后awk
对 $4 列中的数字求和
答案2
使用 awk:
awk 'BEGIN {sum = 0}
$5 == "Nov" {sum += $4}
END {print sum}' < data
data
包含该记录的文件在哪里。
答案3
为了使您能够简单地更改目标月份,请尝试对数组中的所有月份求和,并仅打印相关的数组元素:
awk '{SUM[$5] += $4} END {print SUM["Nov"]}' file
80600