linux中文本文件操作之grep命令

文章目录

  • 背景
  • 案例demo
  • 环境
    • 方式一、安装wsl
    • 方式二、安装grep
    • 一、查找指定字符串
    • 二、忽略大小写查找
    • 三、查找时显示行号
    • 四、统计匹配的次数
    • 五、精准匹配一个单词
    • 六、显示匹配上下文
    • 七、只显示匹配的内容
    • 八、按固定字符串匹配

背景

在日常运维中会对日志文件,使用grep命令进行查找和过来,记录各种参数使用,方便备查。

案例demo

案例文件 【2025-08-23.log】,模拟文件内容如下。

2025-08-23 12:00:00 - Error: Cannot connect database
2025-08-23 12:10:00 - Error: Out of Memory,please check
2025-08-23 12:20:00 - Error: Null Pointer
2025-08-23 12:20:00 - error: ArrayIndexOutOfBoundsException,please check

环境

方式一、安装wsl

在window环境下,可使用【wsl 】实现效果,安装命令如下所示。

wsl --install

安装完毕即拥有linux环境,可直接使用

方式二、安装grep

可下载grep安装,地址【下载grep】
在这里插入图片描述

一、查找指定字符串

使用命令【grep 待查找的字符串 文件名】,对应本案例的命令为【grep ‘Error’ 2025-08-23.log

二、忽略大小写查找

命令中添加【-i】参数,即使用命令【grep -i 待查找的字符串 文件名】,对应本案例的命令为【grep -i ‘Error’ 2025-08-23.log

三、查找时显示行号

命令中添加【-n】参数,即使用命令【grep -n 待查找的字符串 文件名】,对应本案例的命令为【grep -n ‘Error’ 2025-08-23.log

四、统计匹配的次数

命令中添加【-c】参数,即使用命令【grep -c 待查找的字符串 文件名】,对应本案例的命令为【grep -c ‘Error’ 2025-08-23.log

五、精准匹配一个单词

命令中添加【-w】参数,即使用命令【grep -w 待查找的字符串 文件名】,对应本案例的命令为【grep -w ‘Error’ 2025-08-23.log

六、显示匹配上下文

【-A】 显示匹配行后面几行
【-B】 显示匹配行前面几行
【-C】 显示匹配行前后几行

七、只显示匹配的内容

命令中添加【-o】参数,只显示匹配内容,而不是整行
即使用命令【grep -o 待查找的字符串 文件名】,对应本案例的命令为【grep -o ‘Error’ 2025-08-23.log

八、按固定字符串匹配

命令中添加【-F】参数,只显示匹配内容,而不是整行
即使用命令【grep -F 待查找的字符串 文件名】,对应本案例的命令为【grep -F ‘Error’ 2025-08-23.log

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/96616.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/96616.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

链表漫游指南:C++ 指针操作的艺术与实践

文章目录0. 前言1. 链表的分类2. 单链表的实现2.1 链表的基本结构——节点(Node)2.2 核心操作详解2.2.1 构造和析构2.2.2 插入操作2.2.3 删除操作2.3.4 其他操作2.4 总结3. 双向链表的实现3.1 基本结构设计3.2 基本操作3.2.1 初始化与销毁3.2.2 插入与删…

Claude Code赋能企业级开发:外卖平台核心系统的智能化重构

开篇:万亿市场背后的技术挑战中国外卖市场日订单量超过1亿单,每一单背后都是一个复杂的技术链条:用户下单→商家接单→骑手抢单→实时配送→评价反馈。构建这样一个支撑千万级并发、涉及地理位置计算、实时调度、支付结算的超级平台&#xff…

【使用Unsloth 微调】数据集的种类

1. 什么是数据集 对于大型语言模型(LLMs),数据集是用于训练模型的数据集合。为了训练有效,文本数据需要能够被分词(tokenized)。创建数据集的关键部分之一是聊天模板(chat template)…

【码蹄杯】2025年本科组省赛第一场

个人主页:Guiat 归属专栏:算法竞赛 文章目录1. MC0455 四大名著-西游签到2. MC0456 斩断灵藤3. MC0457 符咒封印4. MC0458 移铁术5. MC0459 昆仑墟6. MC0460 星空迷轨阵7. MC0461 排队8. MC0462 最后一难正文 总共8道题。 1. MC0455 四大名著-西…

CentOS 10安装Ollama

前置说明 linux服务器版本:CentOS10 ollama版本:v0.11.6 下载安装包 下载安装包 官网地址:Ollama 下载地址:Download Ollama 选择linux平台,由于使用官网提供的脚本直接安装容易失败,这里选择手动下…

手机、电脑屏幕的显示坏点检测和成像原理

如今,手机和电脑屏幕已成为人们日常生活和工作中不可或缺的一部分。无论是处理文档、观看视频,还是进行专业设计,屏幕的显示质量都直接影响着用户体验。本文将介绍屏幕显示的基本原理,包括RGB色素构成和成像机制,并进一…

文件与fd

文件与fd一、前置预备二、复习c语言文件三、系统文件认识3.1 系统层面有关文件的接口(open):![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/b15577967d1445b08cd5252f2009683a.png)3.2 简单使用open参数3.3 语言vs系统3.4 进一步理…

语义通信高斯信道仿真代码

1️⃣ 代码 def AWGN(coding, snr, devicecpu):"""为输入张量添加高斯白噪声(AWGN),根据指定的 SNR(分贝)控制噪声强度。参数:coding (torch.Tensor): 输入张量,形状为 [batch_s…

unity中实现机械臂自主运动

目的:导入机械臂的fbx模型,利用C#编写脚本实现机械臂的自主运动步骤1.在 Unity 中,右键点击 “Assets” 文件夹,选择 “Create” -> “C# Script” 来创建一个新的 C# 脚本命名为 “ArmController”。2.双击打开脚本&#xff0…

Python 版本与 package 版本兼容性检查方法

网罗开发(小红书、快手、视频号同名)大家好,我是 展菲,目前在上市企业从事人工智能项目研发管理工作,平时热衷于分享各种编程领域的软硬技能知识以及前沿技术,包括iOS、前端、Harmony OS、Java、Python等方…

深入剖析分布式事务的Java实现:从理论到Seata实战

文章目录深入剖析分布式事务的Java实现:从理论到Seata实战引言:分布式事务的现实挑战1. 分布式事务理论基础1.1 从ACID到CAP/BASE1.2 典型业务场景分析2. 主流分布式事务解决方案对比2.1 技术方案全景图2.2 选型建议3. Seata框架深度解析3.1 Seata架构设…

自建知识库,向量数据库 (十一)之 量化对比余弦——仙盟创梦IDE

向量比对:开启企业经营自动化搜索新视野在当今数字化时代,企业经营自动化已成为提升竞争力的关键。其中,搜索功能作为企业获取信息、连接用户与资源的重要入口,其效率和准确性直接影响企业的运营效率和用户体验。向量比对在企业经…

Spring Cloud系列—SkyWalking告警和飞书接入

上篇文章: Spring Cloud系列—SkyWalking链路追踪https://blog.csdn.net/sniper_fandc/article/details/149948321?fromshareblogdetail&sharetypeblogdetail&sharerId149948321&sharereferPC&sharesourcesniper_fandc&sharefromfrom_link 目…

【问题】解决docker的方式安装n8n,找不到docker.n8n.io/n8nio/n8n:latest镜像的问题

问题概览 用docker方式安装n8n,遇到错误,安装不了的问题: Unable to find image docker.n8n.io/n8nio/n8n:latest locally docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request can…

机器人控制基础:串级PID控制算法的参数如何整定?

目录 一、整定前的准备 二、内环(副环)参数整定(核心步骤) 1. 断开主环,单独测试内环 2. 内环参数整定(按 “比例→积分→微分” 顺序) (1)比例系数(kp)整定 (2)积分系数(ki)整定 (3)微分系数(kd)整定(可选) 3. 验证内环抗扰动能力 三、外环(主…

HTTP性能优化实战指南(含代码/图表/案例)

HTTP性能优化实战指南(含代码/图表/案例)一、性能优化关键指标TTFB(Time To First Byte): 服务器响应时间FCP(First Contentful Paint): 首内容渲染时间LCP(Largest Contentful Paint&#xff0…

QT代码框架小案例:一个简单的时间类(Time)及其实例化程序,模拟了时间的设置、显示和自动流逝功能,类似一个简易电子时钟。

一、代码框架二、运行终端显示三、代码详细注释test.pro# 指定项目类型为应用程序(而非库或其他类型) TEMPLATE app# 配置项目:启用控制台输出,使用C11标准 CONFIG console c11# 移除配置:不生成应用程序捆绑包&…

Nacos-11--Nacos热更新的原理

在Nacos中,当监听到配置变化后,Nacos提供了相关机制(长轮询或gRPC)让客户端能够监听到配置的变化,并触发相应的监听器(Listener),但具体的处理逻辑需要根据实际需求来实现。 1、热更…

fastapi 的BackgroundTasks

什么是 BackgroundTasks?BackgroundTasks 是 FastAPI 提供的一个强大工具,它允许你将一些非紧急的、耗时的操作(例如发送邮件、处理数据、调用第三方 API 等)放到“后台”去执行,而不是让用户一直等待这些操作完成。它…

Python 十进制转二进制

在 Python 中,将十进制整数转换为二进制有多种方法。以下是几种常见的方式:1. 使用 bin() 函数bin() 是 Python 内置函数,可以将十进制整数转换为二进制字符串。语法bin(n)示例n 13 binary_str bin(n) print(binary_str) # 输出: 0b1101说…