zoukankan      html  css  js  c++  java
  • linux uniq 命令实用手册

    Linux uniq 命令用于处理文本内容中的重复行

    这里我们只介绍其常用参数,其完整用法可参见man uniq

    例如,我们有如下文件内容:

    >>> cat log.txt
    _______________
    hello
    HEllo
    world
    world
    hello
    

    使用uniq 命令,不加任何参数处理,注意,这里的两行hello 并没有相邻,所以最终还是显示了两行hello,而两行world 是相邻的,所以去掉了其中一行world

    >>> uniq log.txt 
    hello
    HEllo
    world
    hello
    

    如果想将不相邻的相同内容也去重,一般需要与sort 命令配合使用,先排序,再去重,如下(这时所有的重复行都被去重了):

    >>> cat log.txt | sort| uniq
    ____________________________
    HEllo
    hello
    world
    

    使用-s参数,忽略前N 个字符(此处忽略了前2 个字符):

    >>> cat log.txt | sort| uniq -s 2
    _________________________________
    HEllo
    world
    

    使用-i 参数,忽略大小写(最终只剩下了大写的):

    >>> cat log.txt | sort| uniq -i
    _______________________________
    HEllo
    world
    

    使用-d 参数,只输出重复的行HEllo 没有重复,所以没有输出):

    >>> cat log.txt | sort| uniq -d
    _______________________________
    hello
    world
    

    使用-u 参数,与-d 参数相反,只输出不重复的行HEllo 没有重复,所以输出):

    >>> cat log.txt | sort| uniq -u
    ———————————————————————————————
    HEllo
    

    使用-c 参数,计算重复行的次数,如下(第一列为出现的次数):

    >>> cat log.txt | sort| uniq -c
    _______________________________
          1 HEllo
          2 hello
          2 world
    

    按照重复次数进行反向排序

    cat log.txt | sort| uniq -c| sort -nr
    —————————————————————————————————————
          2 world
          2 hello
          1 HEllo
    

    下面总结以上介绍到的参数:

    参数 含义
    -s N 忽略前N 的字符
    -i 忽略大小写
    -d 只输出重复的行
    -u 只输出不重复的行
    -c 对重复的行进行计数

    (完。)

  • 相关阅读:
    ios隐藏键盘的方式简单应用
    iosiOStextView实现文字高度自适应
    ios xcode中所有自带的字体如下(最好结合NSMutableAttributedString相结合使用)
    iosNSMutableAttributedString 简单操作
    ios电话监听状态
    iOS拨打电话
    iOS TextField输入框点击键盘时随着键盘上移
    Linux学习之CentOS(七)---常用基本操命令1
    Linux学习之CentOS(六)---mount挂载设备(u盘,光盘,iso等 )
    Linux学习之CentOS(五)--CentOS下VMware-Tools安装
  • 原文地址:https://www.cnblogs.com/codeshell/p/12726534.html
Copyright © 2011-2022 走看看