Linux文本文件管理003
★排序、去重、统计★
1)排序
sort -n按照数值排序
-r降序排列
2)去重
uniq 过滤相邻、重复的行
-c 对重复行计数
3)统计
wc 统计文件中的字节数、单词数、行数
-l 显示行数
今天通过使用grep、awk、cut指令和上面几个选项提取文本文件的信息
方法1:
[root@localhost nginx]# cat access.log | awk '{print $1}'| sort -rn | uniq -c | sort -rn | head
Cat 查看文本文件
| awk '{print $1}' 通过管道| 将cat信息传输给awk
{print $1}限制每一行的第一个字段
| sort -rn 将之前的提取数排序
| uniq -c 去重 -c对于重复的数进行计数
| sort -rn 对于之前去重的数再次进行排序
| head 显示前10行
方法2:
[root@localhost nginx]# awk '{print $1}' access.log | sort -rn | uniq -c | sort -rn | head awk '{print $1}' access.log 通过awk指令打印每一行的第一字符
| sort -rn 将之前的提取数排序
| uniq -c 去重 -c对于重复的数进行计数
| sort -rn 对于之前去重的数再次进行排序
| head 显示前10行
方法3:
[root@local-host nginx]# cut -d' ' -f1 access.log | sort -rn | uniq -c | sort -rn | head
# cut -d' ' -f1 access.log -d’ ’指定字符分隔符为单个空格
-f1 每行提取第一个字符
| sort -rn 将之前的提取数排序
| uniq -c 去重 -c对于重复的数进行计数
| sort -rn 对于之前去重的数再次进行排序
| head 显示前10行
方法4:
[root@localhost nginx]# grep -oP '^\S+' access.log | sort | uniq -c | sort -nr | head
grep -oP '^\S+' access.log
-P开启perl正则表达式
-o 只输出匹配的内容
'^\S+' ^字符串定位行首 \S 匹配任何非空白字符 包括字母、数字、标点符号。 除了空格、制表符、换行符等空白字符之外的任何字符 + 一个量词 \S+匹配一个或者多个非空白字符
| sort -rn 将之前的提取数排序
| uniq -c 去重 -c对于重复的数进行计数
| sort -rn 对于之前去重的数再次进行排序
| head 显示前10行
方法5:
[root@localhost nginx]# awk '{ip[$1]++} END {for (i in ip) print ip[i], i | "sort -rn | head" }' access.log
awk '{ip[$1]++} awk 读取每一行
{ip[$1]++} ip[] 关联数组名为ip
$1限定第一个字段
++ 检查第一字段 若已存在会自动加1 ,若不存在,会自动创建初始化为1
print ip[i], i打印出每个IP地址及其出现次数。注意,这里先打印次数再打印IP地址,以匹配最终排序的需求,代表每一行ip出现的次数
sort -rn | head先将awk传输的数据排序再将数据前10打印出来

今天先分享到这里,希望能够帮助到大家……
相关文章:
Linux文本文件管理003
★排序、去重、统计★ 1)排序 sort -n按照数值排序 -r降序排列 2)去重 uniq 过滤相邻、重复的行 -c 对重复行计数 3)统计 wc 统计文件中的字节数、单词数、行数 -l 显示行数 今天通过使用grep、awk、cut指令和上面几个选项提取文本文件…...
uniapp Androud 离线打包升级APK,覆盖安装不更新问题
Android 打包时在assets/data/dcloud_control.xml文件中,如果配置debug"true" syncDebug"true",则consle打印有效,不然没有打印数据 <hbuilder debug"true" syncDebug"true"> <apps> …...
【算法实战】每日一题:设计一个算法,用最少数量的矩形覆盖一系列宽度为d、高度为w的矩形,且使用矩形不能超出边界
题目 设计一个算法,用最少数量的矩形覆盖一系列宽度为d、高度为w的矩形建筑物侧墙,且矩形不能超出边界。 核心思路 考虑这种结构 前面递增后面一个与前面的某个高度一致,这时候考虑最下面的覆盖(即都是从最下面向上覆盖&#…...
外贸仓库管理软件:海外仓效率大幅度提升、避免劳动力积压
随着外贸业务的不断发展,如何高效管理外贸仓库,确保货物顺利流转,订单顺利处理,就变得非常重要。 现在通常的解决方案都是通过引入外贸仓库管理软件,也就是我们常说的海外仓WMS系统来解决。 今天我们就系统的探讨一下…...
6.8 LIBBPF API(七,bpf_core_read.h 函数,定义,枚举)
一,函数 void * bpf_rdonly_cast (const void *obj, __u32 btf_id) __ksym __weak 二,定义 __CORE_RELO(src, field, info) __builtin_preserve_field_info((src)->field,BPF_FIELD_##info) __CORE_BITFIELD_PROBE_READ(dst, src, fld) bpf_probe_read_kernel( \ (v…...
电脑卸载linux安装windows后每次开机都出现grub
原因分析 这是因为电脑硬盘中还存在linux系统的引导程序,并且启动顺序还在windows之前,有时候通过bios根本找不到它的存在,以至于每次windows开机出现grub之后都要输入exit退出linux的引导之后才能使得电脑进入windows,这个有时会…...
总结 HTTPS 的加密流程
一、前言 http是为了解决http存在的问题而在http基础上加入了SSL/TSL,在HTTP/2中TCP三次握手后会进入SSL/TSL握手,当SSL/TSL建立链接后,才会进行报文的传输。 二、HTTPS的混合加密 我们先来认识密钥: 密钥是用于加密和解密数据…...
Spring的FactoryBean多例问题
关于spring bean,我们了解的最多的还是单例,而多例bean,除了平时我们自己new的那些多实例外(但不属于IOC管理了),几乎很少能用到,而在spring 层面,FactoryBean刚好是多例的一个体现,…...
[nextjs]推荐几个很好看的模板网站
最近在做网站,折腾了 vue 框架,然后发现了 nextjs 框架,感觉这个做出来的网站配色很好看,然后又开始研究这个 网站配色好看是因为用的 tailwindcss,找网站过程中,发现了几个很好看的模板网站,在这里推荐下,或许你也能用得上 推荐第一个网站是: https://tailspark.co/ 有组件,也…...
《当微服务遇上Ribbon:一场负载均衡的华丽舞会》
在微服务的厨房里,如何确保每一道服务都恰到好处?揭秘Spring Cloud Ribbon如何像大厨一样精心调配资源,让负载均衡变得像烹饪艺术一样简单! 文章目录 Spring Cloud Ribbon 详解1. 引言微服务架构中的负载均衡需求Spring Cloud Rib…...
简单随机数据算法
文章目录 一,需求概述二,实现代码三、测试代码四、测试结果五、源码传送六、效果演示 一,需求概述 系统启动时,读取一组图片数据,通过接口返回给前台,要求: 图片随机相邻图片不重复 二&#…...
js画思维导图代码2
这段代码是一个使用Vue.js和D3.js构建的树形图组件。它是一个Vue组件,用于创建和显示一个交互式的树形结构图。下面是对这段代码的简要分析: 模板部分 (<template>): 定义了组件的HTML结构,包括一个隐藏的提示框(#tooltip)和一个用于显…...
使用 Flask 实现异步请求处理
文章目录 为什么需要异步请求处理?在 Flask 中实现异步请求处理使用 Flask-Cors 扩展 总结 在开发 Web 应用程序时,异步请求处理是提高性能和并发能力的重要方法之一。Flask 是一个轻量级的 Web 框架,它提供了易于使用的工具来实现异步请求处…...
关于c++的通过cin.get()维持黑框的思考
1.前言 由于本科没有学过c语言,研究生阶段接触c上手有点困难,今天遇到关于通过cin.get()来让黑框维持的原因。 2.思考 cin.get()维持黑框不消失的原因一言蔽之就是等待输入。等待键盘的输入内容并回车(一般是回车)后cin.get()才…...
fastadmin接口输出图片 自动拼接网站URL
先自定义常量 1.文件接口路径 修改核心文件 application\common\controller\Api.php/*** 构造方法* access public* param Request $request Request 对象*/public function __construct(Request $request null){$this->request is_null($request) ? Request::instance…...
VMware Workstation 不可恢复错误:(vmui) 错误代码0xc0000094
软件版本 vmware 17 错误情况 VMware Workstation 不可恢复错误:(vmui) Exception 0xc0000094 has occurred. 问题原因 VMware升级到17.0后,将虚拟机环境的【硬件兼容性】升级至Workstation 17.X后,无法修改设备参数。 解决办法 打开需…...
DockerNetwork
Docker Network Docker Network 是 Docker 引擎提供的一种功能,用于管理 Docker 容器之间以及容器与外部网络之间的网络通信。它允许用户定义和配置容器的网络环境,以便容器之间可以相互通信,并与外部网络进行连接。 Docker Network 提供了以…...
QT学习(20):QStyle类
Qt包含一组QStyle子类,这些子类(QWindowsStyle,QMacStyle等)模拟Qt支持的不同平台的样式,默认情况下,这些样式内置在Qt GUI模块中,样式也可以作为插件提供。 Qt的内置widgets使用QStyle来执行几…...
hadoop学习之MapReduce案例:输出每个班级中的成绩前三名的学生
hadoop学习之MapReduce案例:输出每个班级中的成绩前三名的学生 所要处理的数据案例: 1500100001 施笑槐,22,女,文科六班,406 1500100002 吕金鹏,24,男,文科六班,440 1500100003 单乐蕊,22,女,理科六班,359 1500100004 葛德曜,24,男,理科三班,421 15001…...
【亲测,安卓版】快速将网页网址打包成安卓app,一键将网页打包成app,免安装纯绿色版本,快速将网页网址打包成安卓apk
背景:部分客户需求将自己网站打包成app,供用户在浏览器安装使用、 网页网址快速生成app 准备材料操作流程第一步:打开HBuilder X新建项目第二步创建Wap2App项目第三步修改App图标第四步发布app第五步查看apk 准备材料 1.需要打包的网页 2.ap…...
Midjourney年度订阅避坑手册:92%用户不知的3大失效风险——自动续费陷阱、区域定价欺诈、账户绑定漏洞
更多请点击: https://intelliparadigm.com 第一章:Midjourney年度订阅优惠全景透视 Midjourney 作为当前主流的 AI 图像生成服务,其年度订阅计划长期受到创作者与团队用户的高度关注。相比月度订阅,年度方案不仅显著降低单月成本…...
为团队 CLI 工具统一配置 Taotoken 作为后端模型服务
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 为团队 CLI 工具统一配置 Taotoken 作为后端模型服务 当团队开发的内部命令行工具需要集成大模型能力时,直接对接多个厂…...
Claude Code cli 以及vscode版本的各种命令参考手册
Claude Code 各种命令参考手册版本说明: 截至 2026 年 4 月,Claude Code 官方文档共收录超过 70 条内置命令与绑定技能。其中约一半为内置命令(行为由 CLI 代码实现),另一半为绑定技能(通过 Prompt 机制实现…...
VideoDownloadHelper:三分钟掌握浏览器视频下载技巧,告别观看限制
VideoDownloadHelper:三分钟掌握浏览器视频下载技巧,告别观看限制 【免费下载链接】VideoDownloadHelper Chrome Extension to Help Download Video for Some Video Sites. 项目地址: https://gitcode.com/gh_mirrors/vi/VideoDownloadHelper 你是…...
CP2K实战指南:CUTOFF与REL_CUTOFF参数的系统化调优策略
1. 理解CUTOFF与REL_CUTOFF的核心作用 刚开始用CP2K做材料计算时,最让我头疼的就是MGRID里这两个参数。记得第一次跑硅晶体能量优化,结果比文献值差了近10%,导师指着屏幕问:"你的网格精度设对了吗?"当时真是…...
如何打破课堂限制?JiYuTrainer让您的电脑重获自由
如何打破课堂限制?JiYuTrainer让您的电脑重获自由 【免费下载链接】JiYuTrainer 极域电子教室防控制软件, StudenMain.exe 破解 项目地址: https://gitcode.com/gh_mirrors/ji/JiYuTrainer 当您在计算机课堂上被极域电子教室完全控制时,是否感到学…...
3种高效方案解析:如何深度还原微信小程序源代码结构
3种高效方案解析:如何深度还原微信小程序源代码结构 【免费下载链接】wxappUnpacker forked from https://github.com/qwerty472123/wxappUnpacker 项目地址: https://gitcode.com/gh_mirrors/wxappu/wxappUnpacker 你是否曾面对一个加密的微信小程序包&…...
别再手动拼接数据了!用ONNXRuntime和TensorRT实现多Batch推理的Python/C++实战对比
多Batch推理实战:ONNXRuntime与TensorRT的高效对决 在计算机视觉项目的实际部署中,我们常常会遇到这样的场景:摄像头持续采集图像,或者需要同时处理来自多个传感器的数据。如果每次只处理单张图片,就像用吸管喝一大桶…...
避坑!用ArcGIS计算格网内耕地比例时,90%的人会忽略的数据连接问题
避坑!用ArcGIS计算格网内耕地比例时,90%的人会忽略的数据连接问题 在土地利用规划、农业资源评估等GIS应用中,计算规则格网内的耕地面积占比是一项基础但关键的操作。许多从业者能够顺利完成渔网创建、耕地提取和分区统计步骤,却在…...
LAV Filters终极实战指南:深度解析开源媒体解码器的性能优化与架构设计
LAV Filters终极实战指南:深度解析开源媒体解码器的性能优化与架构设计 【免费下载链接】LAVFilters LAV Filters - Open-Source DirectShow Media Splitter and Decoders 项目地址: https://gitcode.com/gh_mirrors/la/LAVFilters LAV Filters是一套基于FFm…...
