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 对重复的行进行计数

(完。)

linux uniq 命令实用手册的更多相关文章

  1. linux sort 命令实用手册

    Linux 中的sort 命令是一个很实用的工具,用于对文本内容以行为单位进行ASCII 码排序,默认按照升序进行排序(当然也可以按照降序). sort 命令的格式如下: sort `参数` `文件名 ...

  2. linux awk 命令实用手册

    0,简介 Linux awk 是一个实用的文本处理工具,它不仅是一款工具软件,也是一门编程语言.awk 的名称来源于其三位作者的姓氏缩写,其作者分别是Alfred Aho,Peter Weinberg ...

  3. Linux uniq 命令

    Linux uniq 命令  Linux 命令大全 Linux uniq 命令用于检查及删除文本文件中重复出现的行列,一般与 sort 命令结合使用. uniq 可检查文本文件中重复出现的行列. 语法 ...

  4. [转]linux uniq 命令详解

    转自:http://blog.csdn.net/tianmohust/article/details/6997683 uniq 命令   文字 uniq 是LINUX命令 用途 报告或删除文件中重复的 ...

  5. Linux uniq命令

    200 ? "200px" : this.width)!important;} --> 介绍 uniq命令是一个文本去重命令,它能对标准输入和文本文件进行去重操作,并且能将结 ...

  6. linux dd命令实用详解

    linux dd命令刻录启动U盘详解 dd命令做usb启动盘十分方便,只须:sudo dd if=xxx.iso of=/dev/sdb bs=1M 用以上命令前必须卸载u盘,sdb是你的u盘,bs= ...

  7. linux uniq命令用法

    uniq命令: 对指定的ASCII文件或标准输入进行唯一性检查,以判断文本文件中重复出现的行,常用于分析日志:查看tcp各个状态连接数,ip或域名连接数排名等等场景,一般与 sort 命令结合使用. ...

  8. Linux sort命令中文手册(info sort翻译)

    说明: (1).本手册只挑选了有用的信息进行翻译,如要查看完完整整的内容,请自行info sort. (2).译文中,在括号中使用了"注"的,为本人所加,非原文内容,助于理解和说明 ...

  9. Linux uniq命令详解

    uniq常见命令参数 用法:uniq [选项]... [文件] 从输入文件或者标准输入中筛选相邻的匹配行并写入到输出文件或标准输出. 不附加任何选项时匹配行将在首次出现处被合并. 长选项必须使用的参数 ...

随机推荐

  1. scikit_learn分类器详解

    1       分类 分类是将事物按特性进行分类,例如将手写数字图片分类为对应的数字. 1.1  MINIST数字图片集分类 MINST就是一个70000张规格较小的手写数字图片,如何将他们分类为对应 ...

  2. CyclicBarrier是如何成为一个"栅栏"的

    CyclicBarrier是一种类似于栅栏的存在,意思就是在栅栏开放之前你都只能被挡在栅栏的一侧,当栅栏移除之后,之前被挡在一侧的多个对象则同时开始动起来. 1. 如何使用CyclicBarrier ...

  3. pycharm文件名颜色代表的含义

    在使用pycharm过程中,文件名有不一样的颜色. 绿色:已经加入版本控制暂未提交 红色:未加入版本控制 蓝色:加入版本控制,已提交,有改动 白色:加入版本控制,已提交,无改动 灰色:版本控制已忽略文 ...

  4. Python:Day05-2

    面向对象进阶 在前面的章节我们已经了解了面向对象的入门知识,知道了如何定义类,如何创建对象以及如何给对象发消息.为了能够更好的使用面向对象编程思想进行程序开发,我们还需要对Python中的面向对象编程 ...

  5. GoLang——Hello World,打开新世界的大门

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是Go语言系列的第一篇文章,我们来聊聊这门新的语言和它的基础语法. 浅谈Golang 作为程序员而言,往往对于学习新的语言都是有抗拒的. ...

  6. python 程序双击执行的小技巧

    文章更新于:2020-04-03 按照惯例,需要的文件附上链接放在文首. 文件名:ICOFX图标制作软件.7z 文件大小:40.2 MB 下载链接:https://www.lanzous.com/ia ...

  7. tornado自定义实现django include方法

    tornado自定义实现django  include方法 自定义URLmethod模块 from Custom.errors import * def include(base_url, expan ...

  8. python 函数--装饰器

    一.装饰器 1.为什么要用装饰器? 装饰器的功能:在不修改原函数以及调用方式的情况下对原函数功能进行扩展. 二.开放和封闭原则 1.对扩展是开放的 2.对修改是封闭的 三.装饰器的固有结构 impor ...

  9. javascript入门 之 zTree(十二 托拽事件(二))

    1.逻辑可能有不完善的地方,如果发现,请指出. <!DOCTYPE html> <HTML> <HEAD> <TITLE> ZTREE DEMO - d ...

  10. 如何增加Tomcat内存

    有时候在开发中,常常遇到内存溢出问题,很有可能项目过大,导致Tomcat内存不足问题,那么此时就要给Tomcat添加内存了,如,操作如下 1. 先找到Tomcat目录下的catalina.bat文件