uniq

uniq

显示或忽略重复的行。

概要

uniq [OPTION]... [INPUT [OUTPUT]]

主要用途

  • 将输入文件(或标准输入)中邻近的重复行写入到输出文件(或标准输出)中。
  • 当没有选项时,邻近的重复行将合并为一个。

选项

-c, --count                在每行开头增加重复次数。
-d, --repeated             所有邻近的重复行只被打印一次。
-D                         所有邻近的重复行将全部打印。
--all-repeated[=METHOD]    类似于 -D,但允许每组之间以空行分割。METHOD取值范围{none(默认),prepend,separate}。
-f, --skip-fields=N        跳过对前N个列的比较。
--group[=METHOD]           显示所有行,允许每组之间以空行分割。METHOD取值范围:{separate(默认),prepend,append,both}。
-i, --ignore-case          忽略大小写的差异。
-s, --skip-chars=N         跳过对前N个字符的比较。
-u, --unique               只打印非邻近的重复行。
-z, --zero-terminated      设置行终止符为NUL(空),而不是换行符。
-w, --check-chars=N        只对每行前N个字符进行比较。
--help                     显示帮助信息并退出。
--version                  显示版本信息并退出。

参数

INPUT(可选):输入文件,不提供时为标准输入。

OUTPUT(可选):输出文件,不提供时为标准输出。

返回值

返回0表示成功,返回非0值表示失败。

例子

注意:命令2和命令3结果一样,命令1仅作了相邻行的去重。

uniq file.txt
sort file.txt | uniq
sort -u file.txt

只显示单一行,区别在于是否执行排序:

uniq -u file.txt
sort file.txt | uniq -u

统计各行在文件中出现的次数:

sort file.txt | uniq -c

在文件中找出重复的行:

sort file.txt | uniq -d

注意

  1. uniq只检测邻近的行是否重复,sort -u将输入文件先排序然后再处理重复行。
  2. 该命令是GNU coreutils包中的命令,相关的帮助信息请查看man -s 1 uniqinfo coreutils 'uniq invocation'

若文章对你有帮助,可以点赞或打赏支持我们。发布者:Aurora,转载请注明出处:http://61.174.243.28:13541/AY-knowledg-hub/uniq/

(0)
AuroraAurora站点维系者
上一篇 2024年 3月 11日 下午6:36
下一篇 2024年 3月 11日 下午6:36

相关推荐

  • 数组和切片

    文章目录数组和切片数组声明数组是值类型数组的长度使用 range 遍历数组多维数组切片创建切片修改切片切片的长度和容量用 make 创建切片追加元素到切片切片作为函数参数多维切片内…

    2023年 12月 5日
  • groups

    文章目录groups概要主要用途选项参数返回值例子注意 groups 打印指定用户所在组的名称。 概要 groups [OPTION]… [username]… 主要用途 …

    入门教程 2023年 12月 14日
  • batch

    文章目录batch补充说明语法选项参数实例 batch 在系统不繁忙的时候执行定时任务 补充说明 batch命令 用于在指定时间,当系统不繁忙时执行任务,用法与at相似。 语法 b…

    入门教程 2023年 12月 6日
  • ssh-add

    文章目录ssh-add补充说明语法选项实例 ssh-add 把专用密钥添加到ssh-agent的高速缓存中 补充说明 ssh-add命令 是把专用密钥添加到ssh-agent的高速…

    入门教程 2024年 3月 11日
  • vi

    文章目录vi补充说明语法选项参数知识扩展 vi 功能强大的纯文本编辑器 补充说明 vi命令 是UNIX操作系统和类UNIX操作系统中最通用的全屏幕纯文本编辑器。Linux中的vi编…

    入门教程 2024年 3月 11日
  • Git 创建仓库

    本章节我们将为大家介绍如何创建一个 Git 仓库。 你可以使用一个已经存在的目录作为 Git 仓库。 Git 使用 git init 命令来初始化一个 Git 仓库,Git 的很多…

    2024年 4月 30日
  • 36. 写入文件

    欢迎来到 Golang 系列教程的第 36 篇。 在这一章我们将学习如何使用 Go 语言将数据写到文件里面。并且还要学习如何同步的写到文件里面。 这章教程包括如下几个部分: 将字符…

    2023年 12月 5日
  • reposync

    文章目录reposync概要主要用途选项例子文件 reposync 同步yum存储库到本地目录 概要 reposync [选项] 主要用途 reposync用于将远程yum存储库同…

    入门教程 2024年 3月 1日
  • fg

    文章目录fg概要主要用途参数返回值例子注意 fg 将后台作业移动到前台终端运行 概要 fg [job_spec …] 主要用途 用于将后台作业(在后台运行的或者在后台挂起的作业…

    入门教程 2023年 12月 14日
  • pvscan

    文章目录pvscan补充说明语法选项实例 pvscan 扫描系统中所有硬盘的物理卷列表 补充说明 pvscan命令 会扫描系统中连接的所有硬盘,列出找到的物理卷列表。使用pvsca…

    入门教程 2024年 3月 1日

发表回复

登录后才能评论
Translate »