当前位置: 首页 > news >正文

【linux】文件与目录命令 - uniq

文章目录

        • 1. 基本用法
        • 2. 常用参数
        • 3. 用法举例
        • 4. 注意事项

uniq 命令用于过滤文本文件中相邻的重复行,并支持统计重复次数或仅保留唯一行。它通常与 sort 命令配合使用,因为 uniq 只识别相邻的重复行。

1. 基本用法
  • 语法:

    uniq [选项] [输入文件] [输出文件]
    
  • 功能:

    • 从文本中去除相邻的重复行。
    • 统计重复行的次数或保留唯一行。
  • 此命令是否系统自带:此命令是系统默认自带的,无需额外安装。


2. 常用参数
  • 基本功能:
    • -c:在每行前显示重复的次数。
    • -d:仅显示重复的行。
    • -u:仅显示不重复的行。
  • 输出控制:
    • -i:忽略大小写比较。
    • -f N:忽略每行的前 N 个字段(以空格分隔)。
    • -s N:忽略每行的前 N 个字符。
    • -z:用空字符而不是换行符分隔行(适用于某些特殊文件)。
  • 辅助选项:
    • --help:显示帮助信息。
    • --version:显示命令版本信息。

3. 用法举例
  • 去除重复行
    从文件中删除相邻的重复行:

    uniq file.txt
    
  • 统计重复行的次数
    在每行前添加重复次数:

    uniq -c file.txt
    
  • 仅显示重复的行

    uniq -d file.txt
    
  • 仅显示不重复的行

    uniq -u file.txt
    
  • 忽略大小写
    忽略大小写,删除重复行:

    uniq -i file.txt
    
  • 结合 sort 使用
    对非相邻重复行去重:

    sort file.txt | uniq
    
  • 忽略字段或字符
    忽略每行前 2 个字段进行比较:

    uniq -f 2 file.txt
    

    忽略每行前 3 个字符进行比较:

    uniq -s 3 file.txt
    
  • 输出到文件
    去重后将结果输出到新文件:

    uniq file.txt output.txt
    

4. 注意事项
  • uniq 只处理相邻的重复行,因此文件需要先用 sort 排序以确保重复行相邻。
  • -c-d 参数通常结合 sort 使用,以便统计所有重复行。
  • 忽略字段或字符时,必须正确理解分隔方式,默认以空格为字段分隔符。
  • 如果文件中存在空字符行,使用 -z 参数以适应特殊需求。

相关文章:

  • SpringBoot接入DeepSeek(硅基流动版)+ 前端页面调试(WebSocket连接模式)
  • DELL EMC Unity存储如何让控制器进入service mode和退出service mode
  • SQL进阶技巧:上课时长计算
  • 【C++】模板的改进
  • D3.js-简单入门1
  • Transformer学习
  • 基于模糊PID控制的供热控制系统设计Simulink仿真
  • FPGA学习(一)——DE2-115开发板编程入级
  • 【mysql查询】
  • 高频 SQL 50 题(基础版)_1341. 电影评分
  • Leetcode 二叉搜索树迭代器
  • MWC 2025|紫光展锐联手美格智能发布5G通信模组SRM812
  • 【TCP/IP协议栈】4. 传输层协议(TCP、UDP)
  • 2.4GHZ无线跳频算法 C语言
  • Mayavi一个强大的python库
  • 主动推送数据到前端的SSE技术原理以及如何使用
  • Python从0到100(八十八):LSTM网络详细介绍及实战指南
  • vue3(笔记)4.0 vueRouter.导航守卫.ElementPuls知识点
  • node项目前后端密码加密传输及存储方案
  • SpringBoot调用DeepSeek
  • 网站建设优化西安/青岛设计优化公司
  • 滨州内做网站的公司/semantic scholar
  • 黄岩做网站的公司/河南it渠道网
  • 网站建设全/上海seo
  • 招聘网站开发/投广告的平台有哪些
  • 如何架设php网站/杭州网站运营十年乐云seo