gpt4 book ai didi

Linux分组、求和和计数

转载 作者:太空宇宙 更新时间:2023-11-04 12:16:13 26 4
gpt4 key购买 nike

从目录列表中,我创建了一个输出,在第 1 列中显示文件大小,在第 2 列中显示文件名的一部分(这是一个日期)。

178694671 2017-10-14
175332227 2017-10-14
175021608 2017-10-14
174851281 2017-10-14
175316643 2017-10-14

我现在需要做的是对这个列表进行分组、求和和计数。按第 2 列对文件进行分组和计数,并对与每个分组关联的文件大小求和。

以上输出的结果如下所示:

879216430 2017-10-14 5

我试过了

awk '{sum[$1]+= $2;}END{for (date in sum){print sum[date], date;}}'

但它提供了奇怪的结果,我真的不明白它在做什么。

有人能帮忙吗?

最佳答案

使用另一个关联的数组来存储日期的频率,如下所示:

awk '{++freq[$2]; sum[$2]+=$1}
END{for (date in sum) print sum[date], date, freq[date]}' file

879216430 2017-10-14 5

还要注意你的数组的键是 $2 即日期不是 $1

关于Linux分组、求和和计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47354450/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com