shell脚本实现
大神们:
a.txt数据格式如下:
0001 42 2013092500
0003 47 2013092501
0002 41 2013092502
0004 5 2013092503
0005 66 2013092504
0002 66 2013092505
0003 1 2013092506
0004 53 2013092507
0001 23 2013092508
0005 33 2013092509
0002 23 2013092510
0003 57 2013092511
a.txt文件每行3个字段为定长,第一个字段长度为4
通过shell脚本实现a.txt输出为:
0001 23 2013092508
0002 23 2013092510
0003 57 2013092511
0004 53 2013092507
0005 33 2013092509
其实功能就是 按第一个字段排重,对于第一字段相同的行,删除前面行,保留最后一次出现的行
最后按第一个字段排序。
求shell脚本高手帮忙看下,搞了好久都没有搞出来。哭了!
------解决方案--------------------你第二个需求文件格式都变了,当然不适用了
awk '{ line[substr($1,0,4)]=$0} END{for(k in line) print line[k]}' a.txt
------解决方案--------------------
sort -n -k1