创新路
我们一直在努力

精神小伙之文件去重

    最近打开了一个文档,文档中有很多的关键词,其中有很多重复的关键词,但是又不想手动去看去删除,就想到了能不能找到一个东西可以去除这些重复的关键词,于是想到了shell

    测试文档aaaa.txt

    image.png

一、姿势一

    找到一个命令 uniq,可以删除重复的行,试试

    image.png

    但是并没有什么变化,原来uniq只能删除相邻的重复行,那么我们只能先进行相邻行的排序,这里用到了sort命令

    image.pngimage.png

二、姿势二

    sort排序后利用awk进行去重

    awk '{if($1!=a) print;a=$1}'

    定义一个第三方变量a,每次的上一行就是a,然后和当前行比较,如果不一样,就输出,反之就不用输出,然后当前行又赋值给a,以此重复,看看效果

    image.png

    结果来看,和sort加uniq一模一样,但是执行效率比uniq差了一些,因为awk是逐行处理

综上所述,还是使用姿势一吧,又快又简单!精神小伙!

    

    

未经允许不得转载:天府数据港官方信息博客 » 精神小伙之文件去重

客官点个赞呗! (0)
分享到:

评论 抢沙发

评论前必须登录!

天府云博 - 做有态度的开发&运维&设计学习分享平台!

联系我们百度云主机