uniq命令:

常见参数:
-c,--count *****
     在每行旁边显示改行重复出现的次数
-d,--repeated 
      仅显示重复出现的行,2次或2次以上的行,默认的去重包含1次。
 
例子:

a.只对相邻的相同行内容去重。

 
  1. [root@nfs-server test]# cat test.txt
  2. 10.0.0.9
  3. 10.0.0.8
  4. 10.0.0.7
  5. 10.0.0.7
  6. 10.0.0.8
  7. 10.0.0.8
  8. 10.0.0.9
  9. [root@nfs-server test]# uniq test.txt
  10. 10.0.0.9
  11. 10.0.0.8
  12. 10.0.0.7
  13. 10.0.0.8
  14. 10.0.0.9
b.sort命令让重复的行相邻
  1. [root@nfs-server test]# sort test.txt
  2. 10.0.0.7
  3. 10.0.0.7
  4. 10.0.0.8
  5. 10.0.0.8
  6. 10.0.0.8
  7. 10.0.0.9
  8. 10.0.0.9
c.先用sort命令将重复的行相邻,接着使用uniq去重
  1. [root@nfs-server test]# sort test.txt|uniq
  2. 10.0.0.7
  3. 10.0.0.8
  4. 10.0.0.9
  5. [root@nfs-server test]#
d.将两个命令整合起来,可使用sort -u代替
  1. [root@nfs-server test]# sort -u test.txt
  2. 10.0.0.7
  3. 10.0.0.8
  4. 10.0.0.9
e.去重计数
  1. [root@nfs-server test]# sort test.txt|uniq -c
  2. 210.0.0.7
  3. 310.0.0.8
  4. 210.0.0.9
uniq功能:
-c,--count 去重计数
企业案例:
考试题:处理以下文件内容,将域名取出并根据域名进行计数排序处理:(百度和SOHU面试题)
test.log
解答:
法1:
  1. [root@nfs-server test]# sort test.log|awk -F "[://]+"'{print $2}'|uniq -c
  2. 1 mp3.judong.org
  3. 2 post.judong.org
  4. 3 www.judong.org
法2:
  1. [root@nfs-server test]# awk -F /'{print $3}' test.log|sort
  2. mp3.judong.org
  3. post.judong.org
  4. post.judong.org
  5. www.judong.org
  6. www.judong.org
  7. www.judong.org
  8. [root@nfs-server test]# awk -F /'{print $3}' test.log|sort|uniq -c
  9. 1 mp3.judong.org
  10. 2 post.judong.org
  11. 3 www.judong.org
  12. [root@nfs-server test]#
让降序排列:
  1. [root@nfs-server test]# awk -F /'{print $3}' test.log|sort|uniq -c|sort -r ##-r,表示倒序排列
  2. 3 www.judong.org
  3. 2 post.judong.org
  4. 1 mp3.judong.org
  5. [root@nfs-server test]#
法3:
cut 切割,简单的取列命令 
    -d:指定分隔符
    -f数字:表示取第几列。-f3,6
    -c按字符取
  1. [root@nfs-server test]# cut -d /-f3 test.log|sort -r|uniq -c
  2. 3 www.judong.org
  3. 2 post.judong.org
  4. 1 mp3.judong.org
  5. [root@nfs-server test]#
 
 
 

1.uniq去重命令讲解的更多相关文章

  1. 快捷键和功能键、进入DOS命令行的方法、DOS命令讲解、java跨平台原理、JRE和JDK的定义、书写格式

    快捷键和功能键A:键盘功能键* a:Tab* b:Shift* c:Ctrl* d:Alt* e:空格 * f:Enter* g:Window* h:上下左右键* i:PrtSc(PrintScree ...

  2. Linux学习之路--常用命令讲解

    Linux常用命令讲解 1.命令格式:命令 [-选项]  [参数] 超级用户的提示符是# 一般用户的提示符是$ 如:ls -la /usr说明: 大部分命令遵从该格式多个选项时,可以一起写 eg:ls ...

  3. Linux去重命令uniq(转)

    注意:需要先排序sort才能使用去重. Linux uniq命令用于检查及删除文本文件中重复出现的行列. uniq可检查文本文件中重复出现的行列. 语法 uniq [-cdu][-f<栏位> ...

  4. linux命令(12)uniq去重

    转载地址:http://blog.51yip.com/shell/1022.html 实例详细说明linux下去除重复行命令uniq 一,uniq干什么用的 文本中的重复行,基本上不是我们所要的,所以 ...

  5. sort排序和uniq统计命令

    author:headsen chen date: 2018-08-13  11:08:09 1,sort:排序的功能,默认安装ASCII码来排序,-n 安装数值排,-r 按照倒序来排 [root@b ...

  6. Dos命令讲解

    目录 一.什么是DOS 二.启动DOS的多种方法 三.DOS的内部命令与外部命令 四.系统环境变量讲解 增加Path环境变量路径 常见的系统环境变量 五.常用的运行命令 六.DOS使用技巧 设置CMD ...

  7. Linux基础之基本命令cat less more sort uniq alias 命令行 bash简单描述(三)

    获取Linux当前最新的内核版本号经常关注www.kernel.org 目录管理:ls cd pwd mkdir rmdir tree 文件管理:touch stat file rm cp mv na ...

  8. grep,cut,wc,sort,diff,uniq,patch命令

    文本处理工具: Linux上文本处理三剑客: grep,egrep,fgrep: 文本过滤工具(模式: pattern)工具; grep:基本正则表达式,-E,-F egrep:扩展正则表达式,-G, ...

  9. 使用sort,uniq去重并统计出现次数

    测试文档test 1 2 3 4 1 2 1 1 sort把相同的放在一起 [root@salt-test ~]# sort test 1 1 1 1 2 2 3 4 uniq -c统计出现的次数 [ ...

随机推荐

  1. Redis数据结构详解之Set(三)

    序言 在Redis中,Set和list都是字符串序列,非常相似,不同之处在于Set是用哈希表来保持字符串的唯一性,没有先后顺序,不像list一样,可以在首尾增删数据.但是set也有自己的相应处理命令来 ...

  2. 关于android中调用系统拍照,返回图片是旋转90度

    转载博客:http://blog.csdn.net/walker02/article/details/8211628 项目开发中遇到的一个问题,对于三星手机在做手机照片选择时出现图片显示不正常,研究后 ...

  3. Unity3D中使用委托和事件

    前言: 本来早就想写写和代码设计相关的东西了,以前做2DX的时候就有过写写观察者设计模式的想法,但是实践不多.现在转到U3D的怀抱中,倒是接触了不少委托事件的写法,那干脆就在此总结一下吧. 1.C#中 ...

  4. [占位-未完成]scikit-learn一般实例之十:核岭回归和SVR的比较

    [占位-未完成]scikit-learn一般实例之十:核岭回归和SVR的比较

  5. dicom网络通讯入门(2)

    第二篇,前面都是闲扯 其实正文现在才开始,这次是把压箱底的东西都拿出来了. 首先我们今天要干的事是实现一个echo响应测试工具 也就是echo 的scu,不是实现打印作业管理么.同学我告诉你还早着呢. ...

  6. 初识Hadoop

    第一部分:              初识Hadoop 一.             谁说大象不能跳舞 业务数据越来越多,用关系型数据库来存储和处理数据越来越感觉吃力,一个查询或者一个导出,要执行很长 ...

  7. 货架工程项目之js dom实现项目工程进度图

    笔者最近要负责有个项目工程网站的安装进度过程,实现的效果要求大概如下图所示 由于笔者没有参与到数据库的制作,得知他们这个项目设计工序的时候就一个开始日期的和完成日期,连整个项目的安装结束时间都没有简直 ...

  8. perl 如何匹配ASCII码以及ASCII码转换

    匹配ASCII码:   /[:ascii:]/ ASCII码转换为数字: ord() 数字转换为ASCII码: chr()

  9. JavaScript的“原型甘露”

    今天跟朋友讨论JS的面向对象编程问题,想起了原来曾经看过一篇文章,但是看过很久想不起来了,用了很多关键词,终于用“悟透JavaScript  面向对象”这两个关键词找到了“原文”,原文地址:http: ...

  10. ES6之数组扩展方法【一】(相当好用)

    form 转化为真正的数组 先说一下使用场景,在Js中,我们要经常操作DOM,比如获取全部页面的input标签,并且找到类型为button的元素,然后给这个按钮注册一个点击事件,我们可能会这样操作: ...