Welcome 微信登录

首页 / 操作系统 / Linux / 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]] 就是想要的结果。Linux命令:ls 排序sed D循环之反向输出相关资讯      awk 
  • 使用 awk 过滤文本或文件中的字符  (07月25日)
  • Linux 管理员都应该会的命令:sed   (01月13日)
  • Linux awk文本分析工具  (12/13/2015 16:29:12)
  • 使用awk格式化输出文本  (04月14日)
  • 使用awk批量杀进程的命令  (12/20/2015 15:36:24)
  • 使用 Linux/Unix 进行文本处理  (11/23/2015 09:54:13)
本文评论 查看全部评论 (0)
表情: 姓名: 字数