> 文本处理与搜索 > uniq

uniq 命令指南:删除和检查重复行

`uniq` 命令用于从文本文件或通过管道传输的数据中删除连续重复的行,或统计重复行的数量。当与 `sort` 命令结合使用时,它能发挥出真正的作用,是数据清理和分析工作中必不可少的工具。

uniq 命令概述

`uniq` 是 'unique' 的缩写,用于查找和处理文件中的重复行。这里重要的一点是,`uniq` 只处理**连续重复的行**。因此,要从整个文件中删除重复项,必须首先使用 `sort` 命令对数据进行排序。

uniq 的工作方式

uniq 命令逐行读取输入,并与前一行进行比较。如果两行相同,则视为重复;如果不同,则视为新的唯一行。因此,为了从整个文件中删除重复项,必须先使用 `sort` 命令对文件进行排序。

主要选项

利用 `uniq` 命令的各种选项,可以执行精细的操作,如删除重复项、计数和输出特定行。

1. 基本功能

2. 比较方式控制

生成的命令:

请尝试组合命令。

描述:

`uniq` 执行命令。

通过组合这些选项,您可以与 AI 一起虚拟地执行命令。

常用示例

学习如何将 uniq 和 `sort` 结合使用以高效处理数据。

从整个文件中删除重复行

sort data.txt | uniq

使用 `sort` 对 `data.txt` 文件进行排序,然后使用 `uniq` 删除整个文件中的重复行。这种组合是最常见的用法。

输出重复的行和次数

sort data.txt | uniq -c

删除 `data.txt` 文件中的重复行,并输出每行出现的次数。

只输出整个文件中的重复行

sort data.txt | uniq -d

只输出 `data.txt` 文件中出现两次或两次以上的行。

只输出整个文件中只出现一次的唯一行

sort data.txt | uniq -u

只输出 `data.txt` 文件中不重复且只出现一次的行。

忽略特定字段并删除重复项

sort log.txt | uniq -f 1

忽略日志文件中的时间信息(第一个字段),只根据其余内容删除重复项。


相关命令

功能上相似或经常一起使用的命令。


相同类别命令