专栏首页米扑专栏Linux删除重复行

Linux删除重复行

文本处理时,经常要删除重复行,下面是三种方法

第一,用sort+uniq,注意,单纯uniq是不行的。 sort -n test.txt | uniq

第二,用sort+awk命令,注意,单纯awk同样不行,原因同上。

sort -n $file | awk '{if($0!=line)print; line=$0}'

第三,用sort+sed命令,同样需要sort命令先排序。

sort -n $file | sed '$!N; /^\(.*\)\n\1$/!P; D'

Shell脚本

# !/bin/sh


file='test.txt'

sort -n $file | uniq

sort -n $file | awk '{if($0!=line)print; line=$0}'

sort -n $file | sed '$!N; /^\(.*\)\n\1$/!P; D'

测试文件:

yanggang@barry$ cat test.txt  aaa bbbbb ccccc 123 aaaaa 123 bbb aaa 执行结果:

yanggang@barry$ ./diffRow.sh  aaa aaaaa bbb bbbbb ccccc 123

推荐参考:

删除文本中的重复行sort+uniq/awk/sed

SED单行脚本快速参考Unix 流编辑器

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Linux 删除文本中的重复行

    这里我做了个简单的测试,当file中的重复行不再一起的时候,uniq将服务删除所有的重复行。经过排序后,所有相同的行都在相邻,因此unqi可以正常删除重复行。...

    阳光岛主
  • Android 滑动效果入门篇(二)—— Gallery

    Gallery 是Android官方提供的一个View容器类,继承于AbsSpinner类,用于实现页面滑动效果。

    阳光岛主
  • Linux crond 不执行原因分析

    阳光岛主
  • Linux sort命令简介

    用sort对文件排序,发现这个命令比想象中要复杂和强大,仔细研究了一下文档,记录一下。

    猿哥
  • 3n+1问题

    猜想:对于任意大于1的自然数n,若n为奇数,则将n变为3n+1,否则变为n的一半。

    Vincent-yuan
  • 校招助手数据存储PyMySQL

    之前做了招聘会信息提醒之微信机器人,微信群已经建了5个,总体的用户大概有不到两千人。小目标是让西电今年找工作的人都能用上。 和几个小伙伴一拍即合,做个小程序吧!...

    一点儿也不潇洒
  • 《Drools7.0.0.Final规则引擎教程》第4章 4.4 LHS简介&Pattern

    LHS简介 在规则文件组成章节,我们已经了解了LHS的基本使用说明。LHS是规则条件部分的统称,由0个或多个条件元素组成。前面我们已经提到,如果没有条件元素那么...

    用户1161110
  • Asp.net mvc 知多少(七)

    本系列主要翻译自《ASP.NET MVC Interview Questions and Answers 》- By Shailendra Chauhan,想...

    圣杰
  • Java 机器学习库Smile实战(一)SVM

    本文不会介绍SVM的基本原理,如果想了解SVM基本原理,请参阅相关书籍。 要使用Java机器学习库Smile,需首先在项目的Maven配置文件pom.xml中添...

    机器学习算法工程师
  • 【Web技术】276- WebView缓存原理分析和应用

    混合式开发,在产品体验以及页面加载速度的体验上已经非比以往的。今日早读文章由@unclechen分享。

    pingan8787

扫码关注云+社区

领取腾讯云代金券