Shell中uniq命令的用法

2023-12-25 08:18
文章标签 命令 用法 shell uniq

本文主要是介绍Shell中uniq命令的用法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、uniq命令的作用

报告或忽略文件中的重复行,一般与sort命令结合使用

二、使用格式

语法:uniq (选项) (参数)

选项列表:

  • -c或–count:在每列旁边显示该行重复出现的次数
  • -d或–repeated:仅显示重复出现的行列
  • -f<栏位>或–skip-fields=<栏位>:忽略比较指定的栏位
  • -s<字符位置>或–skip-chars=<字符位置>:忽略比较指定的字符
  • -u或–unique:仅显示出一次的行列
  • -w<字符位置>或–check-chars=<字符位置>:指定要比较的字符

参数:

  • 输入文件:指定要去除重复行的文件。如果不指定此项,则从标准读取数据
  • 输出文件:指定要去除重复行后的内容要写入的输出文件。如果不指定此选项,则将内容显示到标准输出设备(显示终端)

三、举例

初始数据:text.txt

abcdefg
abcdefg
higklmn
opqrstu
abcdscd
vwxyz

3.1 获得去重后的行数据

uniq text.txt

输出结果:

abcdefg
higklmn
opqrstu
abcdscd
vwxyz

3.2 排序➕去重

方法1

sort text.txt | uniq

方法2:

sort -u text.txt

输出结果:

abcdefg
abcdscd
higklmn
opqrstu
vwxyz

3.3 只获取并显示不重复的行数据

uniq -u text.txt

输出结果:不显示abcdefg这种重复的行数据

higklmn
opqrstu
abcdscd
vwxyz

3.4 排序+显示不重复的行

sort text.txt | uniq -u

输出结果:

abcdscd
higklmn
opqrstu
vwxyz

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

sort text.txt | uniq -c

输出结果:

 2 abcdefg1 abcdscd1 higklmn1 opqrstu1 vwxyz

3.6 在文件中找出重复的行

sort text.txt | uniq -d

输出结果:

abcdefg

这篇关于Shell中uniq命令的用法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/534819

相关文章

shell脚本批量导出redis key-value方式

《shell脚本批量导出rediskey-value方式》为避免keys全量扫描导致Redis卡顿,可先通过dump.rdb备份文件在本地恢复,再使用scan命令渐进导出key-value,通过CN... 目录1 背景2 详细步骤2.1 本地docker启动Redis2.2 shell批量导出脚本3 附录总

C语言中%zu的用法解读

《C语言中%zu的用法解读》size_t是无符号整数类型,用于表示对象大小或内存操作结果,%zu是C99标准中专为size_t设计的printf占位符,避免因类型不匹配导致错误,使用%u或%d可能引发... 目录size_t 类型与 %zu 占位符%zu 的用途替代占位符的风险兼容性说明其他相关占位符验证示

MySQL中EXISTS与IN用法使用与对比分析

《MySQL中EXISTS与IN用法使用与对比分析》在MySQL中,EXISTS和IN都用于子查询中根据另一个查询的结果来过滤主查询的记录,本文将基于工作原理、效率和应用场景进行全面对比... 目录一、基本用法详解1. IN 运算符2. EXISTS 运算符二、EXISTS 与 IN 的选择策略三、性能对比

Linux如何查看文件权限的命令

《Linux如何查看文件权限的命令》Linux中使用ls-R命令递归查看指定目录及子目录下所有文件和文件夹的权限信息,以列表形式展示权限位、所有者、组等详细内容... 目录linux China编程查看文件权限命令输出结果示例这里是查看tomcat文件夹总结Linux 查看文件权限命令ls -l 文件或文件夹

全面解析Golang 中的 Gorilla CORS 中间件正确用法

《全面解析Golang中的GorillaCORS中间件正确用法》Golang中使用gorilla/mux路由器配合rs/cors中间件库可以优雅地解决这个问题,然而,很多人刚开始使用时会遇到配... 目录如何让 golang 中的 Gorilla CORS 中间件正确工作一、基础依赖二、错误用法(很多人一开

idea的终端(Terminal)cmd的命令换成linux的命令详解

《idea的终端(Terminal)cmd的命令换成linux的命令详解》本文介绍IDEA配置Git的步骤:安装Git、修改终端设置并重启IDEA,强调顺序,作为个人经验分享,希望提供参考并支持脚本之... 目录一编程、设置前二、前置条件三、android设置四、设置后总结一、php设置前二、前置条件

Java Stream流之GroupBy的用法及应用场景

《JavaStream流之GroupBy的用法及应用场景》本教程将详细介绍如何在Java中使用Stream流的groupby方法,包括基本用法和一些常见的实际应用场景,感兴趣的朋友一起看看吧... 目录Java Stream流之GroupBy的用法1. 前言2. 基础概念什么是 GroupBy?Stream

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

C语言进阶(预处理命令详解)

《C语言进阶(预处理命令详解)》文章讲解了宏定义规范、头文件包含方式及条件编译应用,强调带参宏需加括号避免计算错误,头文件应声明函数原型以便主函数调用,条件编译通过宏定义控制代码编译,适用于测试与模块... 目录1.宏定义1.1不带参宏1.2带参宏2.头文件的包含2.1头文件中的内容2.2工程结构3.条件编

linux下shell脚本启动jar包实现过程

《linux下shell脚本启动jar包实现过程》确保APP_NAME和LOG_FILE位于目录内,首次启动前需手动创建log文件夹,否则报错,此为个人经验,供参考,欢迎支持脚本之家... 目录linux下shell脚本启动jar包样例1样例2总结linux下shell脚本启动jar包样例1#!/bin