`

uniq 去除重复行或统计

阅读更多
uniq 去除重复行或统计
主要选项
-u (唯一)和 -d (重复) -c (统计) -f (跳过字段数,默认tab标示)  -s (同f,单位字符)
1.同样记录打印一次(必须是排好序)
sort  a.txt |uniq 或
sort -u a.txt -o b.txt

[root@M165 root]# cat a.txt          
a b 2
a b 4
a b 2
a d 4
a b 4
统计重复行
[root@M165 root]# sort a.txt |uniq -dc
      2 a b 2
      2 a b 4
统计单独行,不懂为什么有uniq -uc
[root@M165 root]# sort a.txt |uniq -uc
      1 a d 4
分别统计
[root@M165 root]# sort a.txt |uniq -c
      2 a b 2
      2 a b 4
      1 a d 4

[root@M165 root]# tail -5 install.log.syslog
<13>Aug 21 16:01:28 kudzu: aliased usb-controller1 as ehci-hcd
<13>Aug 21 16:01:29 kudzu: aliased usb-controller1 as ehci-hcd
<13>Aug 21 16:01:20 kudzu: aliased usb-controller1 as ehci-hcd
<13>Aug 22 16:01:20 kudzu: aliased usb-controller1 as ehci-hcd
<14>Aug 22 16:01:20 kudzu: aliased usb-controller1 as ehci-hcd
不对比第一字段<13>Aug
[root@M165 root]# tail -5 install.log.syslog |uniq -f 1
<13>Aug 21 16:01:28 kudzu: aliased usb-controller1 as ehci-hcd
<13>Aug 21 16:01:29 kudzu: aliased usb-controller1 as ehci-hcd
<13>Aug 21 16:01:20 kudzu: aliased usb-controller1 as ehci-hcd
<13>Aug 22 16:01:20 kudzu: aliased usb-controller1 as ehci-hcd
不对比第二字段21
[root@M165 root]# tail -5 install.log.syslog |uniq -f 2
<13>Aug 21 16:01:28 kudzu: aliased usb-controller1 as ehci-hcd
<13>Aug 21 16:01:29 kudzu: aliased usb-controller1 as ehci-hcd
<13>Aug 21 16:01:20 kudzu: aliased usb-controller1 as ehci-hcd
不对比第二字段 16:01:28
[root@M165 root]# tail -5 install.log.syslog |uniq -f 3
<13>Aug 21 16:01:28 kudzu: aliased usb-controller1 as ehci-hcd
[root@M165 root]# tail -5 install.log.syslog |uniq -f 4
<13>Aug 21 16:01:28 kudzu: aliased usb-controller1 as ehci-hcd
用字符作单位
[root@M165 root]# tail -5 install.log.syslog |uniq -s 9
<13>Aug 21 16:01:28 kudzu: aliased usb-controller1 as ehci-hcd
<13>Aug 21 16:01:29 kudzu: aliased usb-controller1 as ehci-hcd
<13>Aug 21 16:01:20 kudzu: aliased usb-controller1 as ehci-hcd
<13>Aug 22 16:01:20 kudzu: aliased usb-controller1 as ehci-hcd
[root@M165 root]# tail -5 install.log.syslog |uniq -s 10
<13>Aug 21 16:01:28 kudzu: aliased usb-controller1 as ehci-hcd
<13>Aug 21 16:01:29 kudzu: aliased usb-controller1 as ehci-hcd
<13>Aug 21 16:01:20 kudzu: aliased usb-controller1 as ehci-hcd

转自:http://blog.csdn.net/magicbreaker/article/details/3225672

花下眠: http://huaxiamian.cc
分享到:
评论

相关推荐

    windows下的uniq

    这个工具对于处理大型数据集,特别是那些需要去除重复记录的情况非常有用,例如在日志分析、数据清洗或统计报告生成时。 **Gawk**: Gawk是GNU Awk的简称,它是Awk编程语言的一个实现,适用于各种操作系统,包括...

    linux数据统计基本命令

    - **去除重复行**:`uniq file` 可以去除文件中相邻的重复行。 - **计数重复行**:`uniq -c file` 可以计算每个唯一行出现的次数。 - 示例: ```bash # 对文件 b.txt 进行排序后去除重复行并计数 [root@regtest]...

    Shell中的sort和uniq命令

    `sort` 命令用于对文件内容进行排序,而 `uniq` 命令则用于去除文件中连续重复的行,或者显示只出现一次或多次的行。 1. **`sort` 命令**: - `-n`:按数字进行排序,而不是默认的字典顺序。 - `-r`:反转排序...

    Linux操作命令八.doc

    uniq 命令可以用于删除重复行、统计行出现次数等。 三、join 命令 join 命令是一个强大的命令,它可以将来自多个基于共享关键域的文件的数据结合起来,得到一个期望的结果。join 命令的格式为 join [选项] 文件1 ...

    Linux字符处理基础

    删除重复内容的工具是uniq,它用于去除文本文件中相邻的重复行。uniq命令只比对相邻的行,因此在使用uniq之前通常需要先用sort对文件进行排序。例如,先对文件进行排序,然后使用“uniq”命令来删除重复的行。如果...

    Linux基础-文字处理命令汇总.docx

    4. **uniq**: `uniq`命令用于报告或移除文件中连续的重复行。通过结合`-c`选项,可以统计每行重复出现的次数。例如,`uniq -c`会显示每行及其出现的次数。 以下是一些练习示例的解析: - **1、显示当前系统上每个...

    p431 - p441如何查看PV原语操作

    首先,用`ack`(或`grep`)组合日期和IP地址,然后`sort`和`uniq`去除重复,最后使用`awk`进一步统计每一天的UV次数。 这些命令和技巧是Linux系统中进行日志分析的基础工具,掌握它们能帮助IT从业者有效地监控和...

    Linux实验报告四.doc

    在Linux实验报告四中,主要涉及了四个关键知识点:文本文件的编辑与操作、字符串过滤(grep)、文件排序(sort)、删除重复行(uniq)以及文件内容信息统计(wc)。下面我们将详细探讨这些知识点。 1. **文本编辑...

    Shell脚本去重的几种方法实例

    `uniq` 命令用于报告或删除文本文件中的重复行。默认情况下,`uniq` 只能删除相邻的重复行。因此,在使用 `uniq` 进行去重之前,通常需要先对数据进行排序。 **代码示例:** ```bash [root@bogon ~]# uniq test ...

    sed-awk正则表达式

    `sort`用于对文件内容进行排序,`uniq`则用于去除重复行,`uniq –c`可以显示每个单词出现的次数。如果需要对数字进行排序,可以结合`sort –rn`进行反向数值排序。`sort –k start,end`则可以指定排序的列。 `sed`...

    unix text processing

    `uniq` 命令用于报告或移除文本文件中的重复行。当处理大量数据时,这对于去重非常有用。 #### 5. **tr** `tr` 命令用于替换、压缩和删除输入中的字符。它可以将一种字符集翻译成另一种字符集,对于文本格式转换很...

    Linux下查看CPU型号,内存大小,硬盘空间的命令(详解)

    2 **uniq命令:删除重复行;wc –l命令:统计行数** 1.2 查看CPU核数 # cat /proc/cpuinfo | grep “cpu cores” | uniq cpu cores : 4 1.3 查看CPU型号 # cat /proc/cpuinfo | grep ‘model name’ |uniq model name...

    sed_awk正则表达式

    `uniq` 命令用于去除文本中的重复行。 - `uniq -c` 可以统计重复行的数量。 **6. tr** `tr` (translate or transpose) 命令用于转换字符或删除字符。 - 将一组字符转换为另一组字符。 - 示例:`tr 'set1' 'set2'...

    oralce hugepage

    这个命令首先通过 `grep` 命令找到所有包含 “physical id” 字符串的行,然后通过 `sort` 命令对这些行进行排序,再通过 `uniq` 命令去除重复行,最后通过 `wc -l` 命令统计剩余行的数量,从而得出物理 CPU 的总数...

    shell常用命令

    使用uniq命令可以删除重复行,只留下唯一行。 5. 创建链接文件 使用ln命令可以创建硬连接或软连接。 硬链接相当于创建文件的别名,修改一个文件的内容,另一个文件的内容也跟着改变。 软连接相当于快捷方式,可以跨...

    服务器配置信息查询

    - `uniq`:去除重复项,因为每个物理CPU的核数通常是相同的。 4. **查看逻辑CPU的个数** ```bash [root@localhost ~]# cat /proc/cpuinfo | grep "processor" | wc -l ``` **命令解析:** - `grep "processor...

    linux 命令典藏版.docx

    14. **uniq** - 过滤、统计、删除重复行 - 用于去除文件中的重复行,常与`sort`命令结合使用。 15. **wc** - 输出文件中的字符数、单词数及行数 - 用于统计文件的统计信息,如`wc -l file`计算文件的行数。 以上...

    Linux 操作必备 150 个命令(完整版).docx

    11. uniq 去除重复行。 12. oldboywc 统计文件的行数、单词数或字节数。 13. iconv 转换文件的编码格式。 14. dos2unix 将 DOS 格式文件转换成 UNIX 格式。 15. diff 全拼 difference,比较文件的差异,常用于文本...

Global site tag (gtag.js) - Google Analytics