zoukankan      html  css  js  c++  java
  • 去除重复命令uniq

    命令uniq经常用于去除一个文本中的重复行。用sort命令也可以去除重复行,但二者有较大区别:用sort去除重复行时,sort将整个文本中的多个重复行去除,仅保留一行,而uniq会将多个连续重复的行去除,仅保留一行。

    • 命令格式:

    uniq [option] [input [output]]

    • 常用选项:

    c:输出重复行的重复次数。

    d:仅输出重复的行。

    f:忽略一些字段,只比较指定的字段。

    i:忽略大小写。

    s:忽略一些字符,只比较指定的字符(从s指定的字符处开始对比)。

    u:输出不重复的行。

    w:指定要比较的字符位置。

    用法示例:

    (1)直接使用uniq命令:

    [root@localhost test]# cat uniq_test 
    1111111111111
    2222222222222
    3333333333333
    2222222222222
    2222222222222
    2222222222222
    4444444444444
    [root@localhost test]# uniq uniq_test 
    1111111111111
    2222222222222
    3333333333333
    2222222222222
    4444444444444

    (2)使用选项c和d输出重复行信息:

    [root@localhost test]# uniq -c uniq_test 
          1 1111111111111
          1 2222222222222
          1 3333333333333
          3 2222222222222
          1 4444444444444
    [root@localhost test]# uniq -d uniq_test 
    2222222222222

    (3)使用选项u输出文件中没有重复的行:

    [root@localhost test]# uniq -u uniq_test 
    1111111111111
    2222222222222
    3333333333333
    4444444444444

    (4)有时可能只需要对几个字段或几个字符进行比较,此时可以结合选项f和选项s去除这些重复的行:

    [root@localhost test]# cat uniq_test1
    aaa     bbbAA
    aaa     bbbAA
    aaa     cbbAA
    bba     abbAA
    BDB     AAABB
    BCB     AAABB
    ABB     AACBB
    #使用选项f忽略第1个字段,然后使用s3指定从第2个字段的第3个字符出开始对比
    [root@localhost test]# uniq -f1 -s3 uniq_test1
    aaa     bbbAA
    BDB     AAABB
    ABB     AACBB
  • 相关阅读:
    安卓9.0内测的背后,是上万App开发者半年来的适配优化
    错误记录:vue跟vue编译器版本不一致
    jspdf简单使用
    vue input添加回车触发
    vue watch bug记录
    SecureCRT通过拷贝配置文件登陆
    仿射变换
    opencv图像的旋转
    图像旋转的原理
    CvScalar
  • 原文地址:https://www.cnblogs.com/nufangrensheng/p/3464670.html
Copyright © 2011-2022 走看看