linux(centos8):用uniq去除文本中重复的行(去重)
一,uniq命令的用途
1, 作用:
从输入文件或标准输入中找到相邻的匹配行,
并写入到输出文件或标准输出
2, 使用时通常会搭配sort使用
说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest
对应的源码可以访问这里获取: https://github.com/liuhongdi/
说明:作者:刘宏缔 邮箱: 371125307@qq.com
二,查看uniq命令所属的rpm包
[root@blog nginxlogs]$ whereis uniq
uniq: /usr/bin/uniq /usr/share/man/man1/uniq.1.gz /usr/share/man/man1p/uniq.1p.gz [root@blog nginxlogs]$ rpm -qf /usr/bin/uniq
coreutils-8.30-6.el8.x86_64
默认已安装到了centos8系统,如果找不到命令或误删除,
可以用dnf来安装
[root@blog nginxlogs]$ dnf install coreutils
三,查看uniq的版本和帮助
1,查看版本
[root@blog nginxlogs]$ uniq --version
uniq (GNU coreutils) 8.30
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Written by Richard M. Stallman and David MacKenzie.
2,查看帮助
[root@blog nginxlogs]$ uniq --help
3,查看手册
[root@blog nginxlogs]$ man uniq
四,uniq命令的使用例子
1,增加统计重复出现的次数
#-c: 增加显示当前行重复出现的次数
[root@blog nginxlogs]$ cut -d ' ' -f 1 file_meet.access_log | sort | uniq -c
1 106.15.200.123
875 223.72.53.168
9 47.101.200.88
9 47.101.58.46
...
当然可以加一个倒排
[root@blog nginxlogs]$ cut -d ' ' -f 1 file_meet.access_log | sort | uniq -c | sort -k1 -nr
875 223.72.53.168
9 47.101.58.46
9 47.101.200.88
1 106.15.200.123
...
2,只显示有重复的行
#-d: 只显示重复出现的行
[root@blog nginxlogs]$ cut -d ' ' -f 1 file_meet.access_log | sort | uniq -d
223.72.53.168
47.101.200.88
47.101.58.46
...
3,仅显示没有重复仅出现一次的行
#-u:uniqe
[root@blog nginxlogs]$ cut -d ' ' -f 1 file_meet.access_log | sort | uniq -u
106.15.200.123
4,其他参数:
-s: 指定在每行开始处需要忽略的字符数
-i: 忽略每行字母的大小写
五,uniq命令使用需要注意的地方:
如果重复的行不相邻,uniq 命令不会起作用
所以通常我们会搭配sort命令使用,先排序,使重复的行相邻出现,
这样uniq命令就可以生效了
六,查看centos的版本
[root@blog nginxlogs]$ cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)
linux(centos8):用uniq去除文本中重复的行(去重)的更多相关文章
- python去除文件中重复的行
去除文件中重复的行 import os with open('db.txt','r',encoding='utf-8') as read_f,\ open('.db.txt.swap','w',enc ...
- php去除数组中重复数据
<?php /** * 去除数组中重复数据 * by www.jbxue.com **/ $input = array("a" => "green" ...
- [转]java去除List中重复的元素
java去除List中重复的元素 如果用Set ,倘若list里边的元素不是基本数据类型而是对象, 那么请覆写Object的boolean equals(Object obj) 和int ...
- 关于iOS去除数组中重复数据的几种方法
关于iOS去除数组中重复数据的几种方法 在工作工程中我们不必要会遇到,在数组中有重复数据的时候,如何去除重复的数据呢? 第一种:利用NSDictionary的AllKeys(AllValues)方 ...
- php 去除数组中重复元素
去除数组中重复元素, 找了下可以一下两个函数 php array_flip()与array_uniqure() $arr = array(…………) ;// 假设有数组包含一万个元素,里面有重复的元素 ...
- JS去除数组中重复值的四种方法
JS去除数组中重复值的四种方法 1 /// <summary> o[this[i]] = ""; } } newArr.p ...
- javascript 去除字符串中重复字符
/** * 去除字符串中重复的字符,以下提供2种方法, * removeRepeat()为自己所想: * removeRepeat2()参考网上思路补充的 * removeRepeat3()敬请期待· ...
- SQL Server 复制表结构以及数据,去除表中重复字段
--复制另一个数据库中的某张表的结构及数据--select * from Test.dbo.TestTable(查询表中所有数据) --into [表名] 插入当前数据库新表,如果没有该表就创建 se ...
- 集合求交集 & 去除列表中重复的元素
集合求交集: set1 = {1,2,3,4,5} set2 = {4,5,6,7,8} 交集:set3 = set1 & set2 print(ste3) #结果为{4,5} 或者ste1. ...
随机推荐
- 初识ABP vNext(9):ABP模块化开发-文件管理
Tips:本篇已加入系列文章阅读目录,可点击查看更多相关文章. 目录 前言 开始 创建模块 模块开发 应用服务 运行模块 单元测试 模块使用 最后 前言 在之前的章节中介绍过ABP扩展实体,当时在用户 ...
- xampp安装和使用:windows和linux使用安装微擎小程序
1.官网下载xampp XAMPP:Apache+MySQL+PHP+PERL,适用于windows+linux+macos x+Solaris等多系统使用 官网地址:https://www.apac ...
- 恭喜!Apache Hudi社区新晋多位Committer
1. 介绍 经过Apache Hudi项目委员会讨论及投票,向Udit Mehrotra.Gary Li.Raymond Xu.Pratyaksh Sharma 4人发出Committer邀请,4人均 ...
- 仿苏宁移动web页面 自适应 rem&less
index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
- (数据科学学习手札95)elyra——jupyter lab平台最强插件集
本文示例文件已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 jupyter lab是我最喜欢的编辑器,在过往 ...
- Orchard Core创建CMS/Blog站点
安装.NET Core SDK 下载并安装当前最新版本.NET Core SDK 3.1: https://dotnet.microsoft.com/download 安装visual studio ...
- Java随谈(二)对空指针异常的碎碎念
本文适合对 Java 空指针痛彻心扉的人阅读,推荐阅读时间25分钟. 若有一些Java8 函数式编程的基础可以当成对基础知识的巩固. 一.万恶的null 今天,我们简单谈谈null的问题.因为null ...
- XSS基础笔记 from 《Web安全攻防 渗透测试实战指南》
XSS漏洞介绍 跨站脚本(Cross Site Scripting, 简称为XSS或跨站脚本或跨站脚本攻击)是一种针对网站应用程序的安全漏洞攻击技术,是代码注入的一种.它允许恶意用户将代码注入网页,其 ...
- PHP判断是否是微信浏览器访问的方法
PHP判断是否是微信浏览器访问的方法 PHP判断是否是微信浏览器访问的方法 都是干货,微信开发可能需要用到,留着日后COPY. public function isWeichatBrowser() { ...
- 0921 LCA练习
1.poj 1330 数据结构中的树,在计算机科学中是非常重要的,例如我们来看看下面这棵树: 在图中我们对每个节点都有编号了. 8号节点是这棵树的根.我们定义,一个子节点向它的根节点的路径上,任意一个 ...