免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: df110341243
打印 上一主题 下一主题

如何使用sed删除文件中无重复的内容 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2011-12-05 17:51 |只看该作者
sed -rn 'N;/(.*)\n\1$/{h;:a;D};x;/(.*)\n\1$/{x;h;ba};x;h;D' file
又臭又长。。。

论坛徽章:
3
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:51:162015年亚洲杯之阿曼
日期:2015-04-07 20:00:59
12 [报告]
发表于 2011-12-05 17:53 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
13 [报告]
发表于 2011-12-05 19:26 |只看该作者
sort file | uniq -D

论坛徽章:
0
14 [报告]
发表于 2011-12-05 19:47 |只看该作者
回复  waily


    请不要拿我跟waker shell_hat 相提并论,犹如一只乌鸦和两只凤凰站到了一起.
zooyo 发表于 2011-12-05 17:53



    你可以乌鸡变凤凰

论坛徽章:
0
15 [报告]
发表于 2011-12-05 19:55 |只看该作者
..lz的需求,如果不是连续重复的话,sed几乎没办法做

连续的话还不算麻烦

论坛徽章:
23
15-16赛季CBA联赛之吉林
日期:2017-12-21 16:39:27白羊座
日期:2014-10-27 11:14:37申猴
日期:2014-10-23 08:36:23金牛座
日期:2014-09-30 08:26:49午马
日期:2014-09-29 09:40:16射手座
日期:2014-11-25 08:56:112015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:0315-16赛季CBA联赛之山东
日期:2017-12-21 16:39:1915-16赛季CBA联赛之广东
日期:2016-01-19 13:33:372015亚冠之山东鲁能
日期:2015-10-13 09:39:062015亚冠之西悉尼流浪者
日期:2015-09-21 08:27:57
16 [报告]
发表于 2011-12-05 23:07 |只看该作者
回复 11# where27


可以简化:
  1. sed -rn '$!N;/(.*)\n\1$/{P;ba};x;//P;x;:a;h;D' urfile
复制代码

论坛徽章:
0
17 [报告]
发表于 2011-12-07 17:02 |只看该作者
Shell_HAT 发表于 2011-12-05 16:27



想请问下,我分析了您的解答,然后请您帮忙看下是否正确,尤其是最后两个urfile遍历的问题,谢谢了
遍历第一个urfile,NR==FNR是匹配当前行,如果数组a[aaa]存在,就使得a[aaa]从0开始加1,然后下一行,存在则再加1,接着对a[bbb],a[ccc]依次做该操作
遍历第二个urfile,a[$0]匹配当前行对应数组a的值,如果>1(本例中为2),则打印(对应的print动作可以被隐藏)

论坛徽章:
1
射手座
日期:2014-03-10 14:24:52
18 [报告]
发表于 2011-12-07 17:41 |只看该作者
搜搜tim和黑哥的贴子同样令人震撼!呵呵水深的很

论坛徽章:
0
19 [报告]
发表于 2011-12-08 10:37 |只看该作者
回复 4# zooyo


    这个我也不太明白<(echo)

论坛徽章:
0
20 [报告]
发表于 2011-12-08 10:39 |只看该作者
回复 12# zooyo


    不好意思 是shell_nat,你们3都牛,咱也希望有朝一日能不停的回答大家的问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP