免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1180 | 回复: 2
打印 上一主题 下一主题

请教一个问题。多谢! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-09-26 22:08 |只看该作者 |倒序浏览
有个文件,有22102条数据,如:
13826345990|11|2004-12-22 16:35:27|
13826346120|9|2005-01-18 11:45:31|
13826346360|11|2005-01-21 12:54:39|
13826346660|11|2005-01-21 12:54:40|
13902340580|11|2005-06-22 17:46:14|
13826346990|11|2005-02-22 18:40:24|
13826347010|11|2005-06-22 17:45:51|
13826347360|9|2005-05-29 13:27:20|
13826347600|11|2005-01-21 12:54:41|
13902341130|9|2005-03-29 20:22:35|
13902341910|11|2005-02-22 18:42:14|
13826348880|11|2005-02-22 18:40:27|
13826348960|11|2005-01-21 12:54:45|
13826349180|9|2005-03-25 10:41:40|
13826349260|9|2005-02-22 13:46:54|
13902342360|11|2004-12-22 16:36:59|
13826350600|9|2005-06-11 15:09:21|
13802810350|9|2004-12-16 13:22:27|
13802810930|11|2005-03-22 18:06:02|
13802811620|11|2005-01-21 12:50:43|
13802811800|11|2005-05-23 09:25:41|
13802811950|9|2005-01-30 17:00:07|
13802814100|11|2005-01-21 12:52:18|
13902349360|9|2005-02-23 09:09:14|
13902349450|9|2005-01-16 18:32:20|
13802812970|11|2005-03-22 18:06:06|
13802813490|9|2005-04-12 17:35:34|
13802813620|11|2005-03-22 18:06:07|

第一位是手机号码,第三位是时间,这些号码大多数是不同的,但有1000多条重复,现在想找出各个号码的记录,若有这个号码有多条记录,则只取时间为最后的那条。
如:13602906780|9|2005-02-22 18:38:00|
      13602906780|9|2005-03-16 13:29:12|

则取13602906780|9|2005-03-16 13:29:12|

论坛徽章:
0
2 [报告]
发表于 2005-09-26 23:29 |只看该作者

请教一个问题。多谢!


  1. awk -F '[-| :]' '{
  2.         if(!a[$1])
  3.         {
  4.                 a[$1]=$3$4$5$6$7$8;
  5.                 b[$1]=$0;
  6.         }
  7.         else
  8.         {
  9.                 num=$3$4$5$6$7$8;
  10.                 if(a[$1]<=num)
  11.                 {
  12.                         a[$1]=num;
  13.                         b[$1]=$0;
  14.                 }
  15.         }
  16. }
  17.         END{
  18.                 for( i in b )
  19.                 {
  20.                         print b[i];
  21.                 }
  22.         }
  23. ' txt12
复制代码



13826349180|9|2005-03-25 10:41:40|
13826347600|11|2005-01-21 12:54:41|
13802811800|11|2005-05-23 09:25:41|
13826350600|9|2005-06-11 15:09:21|
13826346120|9|2005-01-18 11:45:31|
13802812970|11|2005-03-22 18:06:06|
13826346360|11|2005-01-21 12:54:39|
13826349260|9|2005-02-22 13:46:54|
13826347360|9|2005-05-29 13:27:20|
13826346660|11|2005-01-21 12:54:40|
13802810350|9|2004-12-16 13:22:27|
13802811620|11|2005-01-21 12:50:43|
13902340580|11|2005-06-22 17:46:14|
13802813490|9|2005-04-12 17:35:34|
13902349360|9|2005-02-23 09:09:14|
13802810930|11|2005-03-22 18:06:02|
13826348880|11|2005-02-22 18:40:27|
13826345990|11|2004-12-22 16:35:27|
13902341910|11|2005-02-22 18:42:14|
13902341130|9|2005-03-29 20:22:35|
13826346990|11|2005-02-22 18:40:24|
13802813620|11|2005-03-22 18:06:07|
13826348960|11|2005-01-21 12:54:45|
13826347010|11|2005-06-22 17:45:51|
13902349450|9|2005-01-16 18:32:20|
13802814100|11|2005-01-21 12:52:18|
13802811950|9|2005-01-30 17:00:07|
13902342360|11|2004-12-22 16:36:59|

论坛徽章:
0
3 [报告]
发表于 2005-09-27 12:03 |只看该作者

请教一个问题。多谢!

sort -t | -k3 filename|awk '{a[$1]=$0}END{for(x in a) print a[x]}'
没测试。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP