相邻去重 uniq -c 表示相邻去重并统计;

1、uniq介绍:

uniq是对指定的ascii文件或标准输入进行唯一性检查,以判断文本文件中重复出现的行,常用于系统排查及日志分析;

2、命令格式:

uniq [options] [ file1 ] [file2]

uniq从已经排序号的文本文件file1中删除重复的行,输出到标注或file2,常作为过滤器,配合管道使用;

在使用uniq命令之前,必须确保操作的文本文件已经sort排序,若不带参数运行uniq,只会去除相邻的重复行;

-c #计数,命令选项是最常用的参数,通过整行进行计数的;

-i #忽略大小写;

3、应用实例:

(1)实验文件内容:

[root@backup scripts]# cat uniq.txt

10.0.0.9

10.0.0.8

10.0.0.7

10.0.0.7

10.0.0.8

10.0.0.8

10.0.0.9

(2)不带参数运行uniq,删除相邻重复的行;

[root@backup scripts]# uniq uniq.txt

10.0.0.9

10.0.0.8

10.0.0.7

10.0.0.8

10.0.0.9

(3)使用sort,将重复的行进行相邻,然后使用uniq删除重复的;

[root@backup scripts]# sort uniq.txt

10.0.0.7

10.0.0.7

10.0.0.8

10.0.0.8

10.0.0.8

10.0.0.9

10.0.0.9

[root@backup scripts]# sort uniq.txt | uniq

10.0.0.7

10.0.0.8

10.0.0.9

(4)sort uniq.txt | uniq 等价于sort -u uniq.txt

[root@backup scripts]# sort -u uniq.txt

10.0.0.7

10.0.0.8

10.0.0.9

(5)对重复的数据进行统计排序:

[root@backup scripts]# sort uniq.txt | uniq -c | sort -r #sort的 -r参数需要在后面进行指定;

3 10.0.0.8

2 10.0.0.9

2 10.0.0.7

1)实验数据:

[root@backup scripts]# vim www.txt

http://mp3.lc.com

http://post.lc.com

http://post.lc.com

http://www.lc.com

http://www.lc.com

http://www.lc.com

2)先把重复的数据进行相邻排序,然后进行计数;

[root@backup scripts]# awk -F "/" '{print $3}' www.txt | sort | uniq -c

1 mp3.lc.com

2 post.lc.com

3 www.lc.com

3)排序:

#方法一 ,awk命令:

[root@backup scripts]# awk -F "/" '{print $3}' www.txt | sort | uniq -c | sort -rn | head -10

3 www.lc.com

2 post.lc.com

1 mp3.lc.com

#方法二,cut命令

[root@backup scripts]# cut -d "/" -f3 www.txt | sort | uniq -c | sort -rn | head -10

3 www.lc.com

2 post.lc.com

1 mp3.lc.com

43、uniq命令的更多相关文章

  1. linux uniq命令用法

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

  2. Linux uniq命令

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

  3. uniq命令注意事项,检查重复行的时候,只会检查相邻的行。

    今天在使用uniq命令统计数量时,uniq -c总是得不到想要的效果,相同的行没有合并,例如 后来在http://ju.outofmemory.cn/entry/78365才看到,原来uniq检查重复 ...

  4. [shell基础]——uniq命令

    uniq命令常见选项      去除重复行      -u  显示不重复的行      -d  显示有重复的行      -c  打印每一行重复的次数 测试文本内容如下: # cat 4.txt 11 ...

  5. uniq 命令

    uniq 命令 文字 uniq是LINUX命令 用途 报告或删除文件中重复的行. 语法 uniq [ -c | -d | -u ] [ -f Fields ] [ -s Characters ] [ ...

  6. Linux Shell脚本入门--Uniq命令

    uniq uniq命令可以去除排序过的文件中的重复行,因此uniq经常和sort合用.也就是说,为了使uniq起作用,所有的重复行必须是相邻的. uniq语法 [root@www ~]# uniq [ ...

  7. Linux之uniq命令

    uniq - report or omit repeated lines  省去重复的行 参数: -i  忽略大小写字符的不同 -c  对重复的行进行记数 注意:uniq命令只会对相邻的重复的行进行去 ...

  8. Linux uniq 命令

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

  9. sort与uniq命令详解

    1.sort的作用 (排序) sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出. 如果 File 参数指定多个文件,那么 sort 命令将这些文件连接起来,并当作一个文件进行 ...

随机推荐

  1. keepalived绑定单播地址、非抢占模式及LVS的TCP模式的高可用

    背景:keepalived默认是组播地址进行播放,且默认地址是224.0.0.18,如果配置多个keepalived主机,会导致虚拟IP地址存在冲突问题,这种问题怎么解决呢? 解决办法:就是将keep ...

  2. Ansible_使用文件模块将修改文件复制到受管主机

    一.描述常用文件模块 1.常用文件模块 模块名称 模块说明 blockinfile 插入.更新或删除由可自定义标记线包围的多行文本块 copy 将文件从本地或远程计算机复制到受管主机上的某个位置.类似 ...

  3. LNAMP架构项目一

    一.第一阶段 假设:公司初期只有一台web服务器,搭建Web服务器的脚本如下: 1 #检查环境 2 setenforce 0 &> /dev/null 3 sed -i s/=enfor ...

  4. Redis 快速集群环境搭建

    环境 Linux :centos 7 redis:redis-5.0.9 Redis 集群环境搭建步骤 早期 redis 版本集群环境搭建需要安装 ruby 运行环境,搭建步骤比较繁琐: redis ...

  5. Java 中布尔(boolean)类型占用多少个字节

    为什么要问这个问题,首先在Java中定义的八种基本数据类型中,除了其它七种类型都有明确的内存占用字节数外,就 boolean 类型没有给出具体的占用字节数,因为对虚拟机来说根本就不存在 boolean ...

  6. docker0详解

    docker0:https://blog.csdn.net/kubailing/article/details/87936501 veth pair详解:https://www.cnblogs.com ...

  7. SSH工作过程简介和SSH协议算法集简介

    SSH简介 SSH是Secure Shell(安全外壳)的简称,是一种在不安全的网络环境中,通过加密机制和认证机制,实现安全的远程访问以及文件传输等业务的网络安全协议. SSH协议采用了典型的客户端/ ...

  8. Linux命令学习—— fdisk -l 查看硬盘及分区信息

    Linux命令学习(3)-- fdisk -l 查看硬盘及分区信息注意:在使用fdisk命令时要加上sudo命令,否则什么也不能输出linux fdisk 命令和df区别是什么? fdisk工具是分区 ...

  9. 常用数据库连接池配置及使用(Day_11)

    世上没有从天而降的英雄,只有挺身而出的凡人. --致敬,那些在疫情中为我们挺身而出的人. 运行环境 JDK8 + IntelliJ IDEA 2018.3  优点: 使用连接池的最主要的优点是性能.创 ...

  10. 统信UOS - 扩展系统盘

    一.开root权限,开终端 二.执行lsblk指令,查看磁盘情况 可以发现 / 路径 对应的是loop0,查阅可知loop设备就是一个文件,挂载为一个路径操作的,这就尴尬了,好好的分区不用,你干嘛这么 ...