感谢支持
我们一直在努力
RackNerd Banner 468x60 RackNerd Banner 468x60

awk数组嵌套筛选数据

系统环境:CentOS  6.2  x86_64


内容如下:



要求:每个数据保留最初的和最后的,就是日期相同的只打印第一个和最后一个(类似打卡记录筛选)


方法:awk ‘{a[$1]++;b[$1,a[$1]]=$0}END{for(i in a) print b[i,1],b[i,a[i]]}’ 123



解析:第一个数组a以$1下标,并累加。第二个数组b为二位数组,以$1,a[$1]为下标,并把$0赋值给b。因为a数组累加,所以相同下标的出现多少次,其值就为多少。b数组中相同第一个下标的最后一个的第二个下标就是a[第一个]的值,所以最打印的b[i,1],b[i,a[i]] 就是想要的结果。

赞(1)
转载请注明出处:服务器评测 » awk数组嵌套筛选数据
分享到: 更多 (0)