免费注册 查看新帖 |

Chinaunix

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

求助个问题,请帮个忙,谢谢 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-10-15 09:28 |只看该作者 |倒序浏览
事情比较急,我很久前也接触一点shell,但一时想不起来怎么处理了,感觉好像使用awk?请各位指点下,谢谢
文档原始格式如下:

1300000        北京        北京市        10        1
1300001        江苏        常州市        519        1
1300006        江苏        南京市        25        1
1300010        北京        北京市        10        1
1300011        北京        北京市        10        1
1300012        天津        天津市        22        1
1300013        天津        天津市        22        1
1300014        天津        天津市        22        1
1300015        山东        淄博市        533        1
1300016        山东        烟台市        535        1
1300017        山东        济南市        531        1
1300018        天津        天津市        22        1
1300019        天津        天津市        22        1
1300020        上海        上海市        21        1
1300021        上海        上海市        21        1
1300022        上海        上海市        21        1
1300023        上海        上海市        21        1
1300024        上海        上海市        21        1

想合并成如下格式:

1300000        北京        北京市        10        1
1300001        江苏        常州市        519        1
1300006        江苏        南京市        25        1
1300010        北京        北京市        10        2
1300012        天津        天津市        22        3
1300015        山东        淄博市        533        1
1300016        山东        烟台市        535        1
1300017        山东        济南市        531        1
1300018        天津        天津市        22        2
1300020        上海        上海市        21        5

请大家指点下,谢谢

论坛徽章:
16
IT运维版块每日发帖之星
日期:2015-08-24 06:20:00综合交流区版块每日发帖之星
日期:2015-10-14 06:20:00IT运维版块每日发帖之星
日期:2015-10-25 06:20:00IT运维版块每日发帖之星
日期:2015-11-06 06:20:00IT运维版块每日发帖之星
日期:2015-12-10 06:20:00平安夜徽章
日期:2015-12-26 00:06:302016猴年福章徽章
日期:2016-02-18 15:30:34IT运维版块每日发帖之星
日期:2016-04-15 06:20:00IT运维版块每日发帖之星
日期:2016-05-21 06:20:00综合交流区版块每日发帖之星
日期:2016-08-16 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-14 06:20:00
2 [报告]
发表于 2010-10-15 09:30 |只看该作者
回复 1# water2oil_cu


    没什么规律吧,观察不出来,难道还得自己眼睛看发现问题,解决问题?

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
3 [报告]
发表于 2010-10-15 09:47 |只看该作者
根据电话号码区号去重行

论坛徽章:
0
4 [报告]
发表于 2010-10-15 09:48 |只看该作者
回复 2# expert1

不好意思,我没说清楚
比如下面的几行:
每一行的第三列是相同的(代表同一个城市),而第一列是连续递增的,这时我就合并成这样一行:
1300020        上海        上海市        21        5
1300026        上海        上海市        21        1

-------------------------------------------------------
号码段             省份         城市          区号      连续号码
-------------------------------------------------------
1300020        上海        上海市        21        1
1300021        上海        上海市        21        1
1300022        上海        上海市        21        1
1300023        上海        上海市        21        1
1300024        上海        上海市        21        1
1300026        上海        上海市        21        1

论坛徽章:
0
5 [报告]
发表于 2010-10-15 09:48 |只看该作者
本帖最后由 lkk2003rty 于 2010-10-15 09:50 编辑

猜错楼主意思了。。。编辑掉。。。。。

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
6 [报告]
发表于 2010-10-15 09:55 |只看该作者
回复  expert1

不好意思,我没说清楚
比如下面的几行:
每一行的第三列是相同的(代表同一个城市),而 ...
water2oil_cu 发表于 2010-10-15 09:48



    还是不明白什么意思?

论坛徽章:
0
7 [报告]
发表于 2010-10-15 09:56 |只看该作者
回复 3# 昭襄王


    能说说用什么命令吗,我觉得这要一次读取两行,并且要根据比较结果对每一行的最后一个字段进行递增操作,谢谢

论坛徽章:
0
8 [报告]
发表于 2010-10-15 09:57 |只看该作者
回复 5# lkk2003rty


    谢谢关注

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
9 [报告]
发表于 2010-10-15 09:57 |只看该作者
$ uniq -f3 -c lines3|awk '$NF=$1'
1 1300000 北京 北京市 10 1
1 1300001 江苏 常州市 519 1
1 1300006 江苏 南京市 25 1
2 1300010 北京 北京市 10 2
3 1300012 天津 天津市 22 3
1 1300015 山东 淄博市 533 1
1 1300016 山东 烟台市 535 1
1 1300017 山东 济南市 531 1
2 1300018 天津 天津市 22 2
5 1300020 上海 上海市 21 5

论坛徽章:
0
10 [报告]
发表于 2010-10-15 09:58 |只看该作者
cat filename|uniq -c -f 1
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP