Linux三剑客-grep
grep介绍
全拼: Global search REgular expression and Print out line.
作用: 文本搜索工具,根据用户指定的“模式(过滤条件)”对目标文本逐行进行匹配检查,打印匹配到的行。
模式: 有正则表达式的 元字符 及 文本字符 所编写出的 过滤条件;grep命令是Linux 系统中最重要的命令之一,功能是从 文本文件或管道数据流中筛选匹配的行和数据,如果在配合正则表达式,功能十分强大,是Linux运维人员必备的命令。
grep常用命令
语法:
grep [options] [pattern] file
命令 参数 匹配模式 文件数量
-i : ignorecase,忽略字符大小写;
-o : 进现实匹配到的字符串本身
-v ,--invert-match : 显示不能被模式匹配到的行 取反
-E : 支持使用扩展的正则表达式元字符
-q , --quiet, --silen : 静默模式,即不输出任何信息
一下是一些常用参数
| 参数选项 | 解释说明 |
| -v | 取反 |
| -n | 显示匹配的行和行号 |
| -i | 不区分大小写 |
| -c | 只统计匹配到的行的数量 |
| -E | 使用egrep命令使用正则 |
| --cloear=auto | 为grep过滤添加颜色 |
| -w | 只是匹配过滤的单词 |
| -o | 只输出匹配的内容 |
grep案例
案例1:查找 /etc/passwd 文件中的root和Root并显示行号
grep -in 'root' /etc/passwd案例2:查找 /etc/passwd 文件中又多少行中有 root 账户
grep -cw 'root' /etc/passwd案例3:查找dome2中有几行非空行
grep -vc '^$' dome2 也可以按照后面来 grep -c '.' dome2案例4:查找dome2中的内容不要空行和注释行并打印行号
grep -vn '^$' dome2 | grep -v '^#'案例5:查找dome2中的内容以A开头的行
grep '^A' dome2案例6:查找dome2中的内容以 . 结尾的行
grep '\.$' dome2案例7:查找 /etc/passwd 中允许登录的账户 (结尾已 /bin/bash的账号都允许登录)
grep '\/bin\/bash$' /etc/passwd案例8: 查找 dome2文件 任意一个3位字符 包括ou
grep '.ou' dome2案例9:查找dome2文件中 所有的小写字母
grep [a-z] dome2案例10: 查找dome2文件中 找出除了 数字以外的字符
grep [^0-9] dome2案例11:查找dome2文件中 不包含数字的行 并且 不查找空行以及备注
grep -v '[0-9]' dome2 | grep -v '^$' | grep -v '^#'
grep扩展正则表达式案例
案例1:按照扩展正则表达式 查找dome2中的内容不要空行和注释行并打印行号
grep -Evn '^$|^#' dome2
案例2:按照扩展正则表达式 查找dome2文件中 不包含数字的行 并且 不查找空行以及备注
grep -Ev "[0-9]|^$|^#" dome2 案例3: 匹配dome2文件中的rr 1次或者多次
grep -E 'rr+' dome2案例4: 匹配dome3文件中的go?d 0次或者1次
grep -E 'go?d' dome3案例5: 查找server下面以json结尾 文件名包含m 和 c的文件
find /server/ -name '*.json' | grep -E 'm|c'案例6:查找 dome3中的grad和gead
grep -E "g(r|e)ad" dome3案例7:查找dome4中 l..e前后都有并且数据一致的行
grep -E '(l..e).*\1' dome4
(l..e) 表示一组
.* 表示匹配任意字符
\1 在这里表示调用第一个()组 也就是(l..e) \2表示调用第二个()组 \n表示调用第n个()组案例8: 查找dome4以a开头以e结尾的所有单词
grep -Eo '\ba/a-zA-Z/*e\b' dome4
\b 单词分割
相关文章:
Linux三剑客-grep
grep介绍 全拼: Global search REgular expression and Print out line. 作用: 文本搜索工具,根据用户指定的“模式(过滤条件)”对目标文本逐行进行匹配检查,打印匹配到的行。 模式: 有正则表达…...
备忘录模式memento
学习笔记,原文链接 https://refactoringguru.cn/design-patterns/memento 允许生成对象状态的快照并在以后将其还原。备忘录不会影响它所处理的对象的内部结构, 也不会影响快照中保存的数据。...
5-【JavaWeb】JUnit 单元测试及JUL 日志系统
1. 使用 JUnit 进行单元测试 JUnit 是 Java 中非常流行的单元测试框架,MyBatis 与 JUnit 可以很好地结合,来测试持久层代码的正确性。 1.1 添加 JUnit 依赖 在使用 JUnit 之前,需要在 pom.xml 中引入 JUnit 依赖。 <dependency><…...
多人开发小程序设置体验版的痛点
抛出痛点 在分配任务时,我们将需求分为三个分支任务,分别由前端A、B、C负责: 前端A: HCC-111-实现登录功能前端B: HCC-112-实现用户注册前端C: HCC-113-实现用户删除 相应地,我们创建三个功能分支: feature_HCC-111-实现登录功能feature_HCC-112-实现用户注册feature_HCC-1…...
【Kubernetes】常见面试题汇总(七)
目录 20.简述 Kubernetes 创建一个 Pod 的主要流程? 21.简述 Kubernetes 中 Pod 的重启策略? 20.简述 Kubernetes 创建一个 Pod 的主要流程? Kubernetes 中创建一个 Pod 涉及多个组件之间联动,主要流程如下: &#…...
EmguCV学习笔记 C# 11.1 DnnInvoke类
版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 EmguCV是一个基于OpenCV的开源免费的跨平台计算机视觉库,它向C#和VB.NET开发者提供了OpenCV库的大部分功能。 教程VB.net版本请访问…...
论文解读 | ACL2024 Outstanding Paper:因果指导的主动学习方法:助力大语言模型自动识别并去除偏见...
点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 点击阅读原文观看作者直播讲解回放! 作者简介 孙洲浩,哈尔滨工业大学SCIR实验室博士生 概述 尽管大语言模型(LLMs)展现出了非常强大的能力,但它们仍然…...
xLSTM模型学习笔记
笔记来源:bilibili LSTM 回顾 原始的 LSTM 是为了解决 RNN 时序反向传播中梯度消失和爆炸问题而提出的。 其所谓的门控机制,其实就是一种时序上的注意力机制,相当于把不同时间进行"掺和",是对时序信息的一种选择性控制…...
woocommerce 调用当前product_tag 为标题
要在 WooCommerce 中调用当前产品标签(product tag)作为标题,你可以使用以下代码。这段代码将获取当前产品标签的名称,并将其显示为标题。 <?php // 获取当前产品标签名称 $current_tag single_term_title(, false);// 检查是…...
音视频开发:基于sdl的pcm播放器
源码 /*** SDL2播放PCM*** 本程序使用SDL2播放PCM音频采样数据。SDL实际上是对底层绘图* API(Direct3D,OpenGL)的封装,使用起来明显简单于直接调用底层* API。* 测试的PCM数据采用采样率44.1k, 采用精度S16SYS, 通道数2** 函数调…...
[产品管理-6]:NPDP新产品开发 - 4 - 战略 - 创新支持战略,支持组织的总体创新战略(平台战略、技术战略、营销战略、知识产权战略、能力建设战略)
目录 一、创新支持战略概述 二、平台战略:大平台小产品战略 2.1 概述 1、平台战略的定义 2、平台战略的特点 3、平台战略的应用领域 4、平台战略的成功案例 5、平台战略的发展趋势 2.2 大平台小产品战略 1)大平台的建设 2)、小产品…...
Cursor:程序员的AI助手,开启智能编程新时代
在当今快节奏的软件开发世界,效率和准确性是成功的关键。而 Cursor,作为一款创新的人工智能编程工具,正在极大地改变着编程的面貌,为开发者带来前所未有的便捷与惊喜。 智能代码生成 Cursor 利用强大的人工智能模型,…...
OpenAI 刚刚发布了新的Sora视频——实现的真人效果令人惊叹
在 YouTube 上发布了两段由专业创作者制作的新的“Sora Showcase”视频。这些视频展示了尚未发布的 Sora AI 视频模型的惊人潜力。 Sora 于今年二月首次宣布,但由于生成时间、成本和错误信息的潜在风险,光年AI 仅向一小部分创作者 开放了该模型。 自So…...
计算机视觉学习路线
计算机视觉是一门让机器理解和解释视觉世界的科学,它涉及到图像识别、图像处理、模式识别等多个方向。学习计算机视觉的路线通常包括以下几个阶段: 数学和编程基础:需要掌握微积分、线性代数、概率论等数学知识,以及Python或C等编…...
JNPF快速开发平台在企业中的应用
随着数字化转型的浪潮席卷全球,企业纷纷寻求高效、灵活的解决方案以适应快速变化的市场需求。在这一背景下,低代码开发平台应运而生,成为数字经济的“软基建”。今天,我们就来探讨JNPF快速开发平台如何在企业中发挥作用࿰…...
Mysql高级篇(中)—— 索引优化
Mysql高级篇(中)—— 索引优化 一、索引分析案例案例 1:单表查询案例 2:两表连接查询案例 3:三表连接查询 二、避免索引失效常见索引失效场景简述场景 1场景 2场景 3场景 4场景 5场景 6 三、索引优化文字版示例版 一、…...
electron: 将网址打包成exe桌面应用
项目场景: 在项目开发的过程中,需要将应用搭建在不同的硬件上。如需要在一个触屏显示器上展示企业相关的应用。 如果专门去开发一个这样的应用,不划算;这时候考虑将网址打包成exe应用,并安装触屏器上,就可…...
【Python篇】PyQt5 超详细教程——由入门到精通(中篇二)
文章目录 PyQt5超详细教程前言第7部分:生成图表与数据可视化7.1 matplotlib 与 PyQt5 的结合7.2 在 PyQt5 中嵌入 matplotlib 图表示例 1:嵌入简单的 matplotlib 图表代码详解: 7.3 动态生成图表示例 2:动态更新图表代码详解&…...
2024/9/10 小型PLC典型应用1:含步进电机+变频器+触摸屏
主要是讲脉冲控制步进,因为etherCat是标准化的,直接通过轴控指令即可控制;canopen也涉及轴控指令,但配置稍微有点不一样。 控制本体端口的步进,通过发脉冲或者脉冲定位信号。 但这个4PM只有单独的轴控指令,…...
RGB与CMYK互转
先定义一个CMYK数据结构: typedef struct struCMYK {int m_nC;int m_nM;int m_nY;int m_nK; }CMYK;RGB转CMYK void CvtRGB2CMYK(COLORREF& clr, CMYK& cmyk) {double dR GetBValue(clr) / 255.0;double dG GetGValue(clr) / 255.0;double dB GetRValue…...
七年之痒:从零复现MaskRCNN的踩坑与重生指南
1. 为什么2024年还要复现MaskRCNN? 七年前第一次看到MaskRCNN的物体检测效果时,那种震撼感至今难忘。作为首个实现实例分割的经典网络,它在COCO数据集上展现的精准边界识别能力,让当时还在用Faster R-CNN的我们直呼"魔法&quo…...
刷题无效、偏科严重?脑能模型解构 K12 学习底层能力问题
一、问题定义:K12 学习低效的核心并非知识缺口,而是大脑能力结构断链在 K12 家庭教育场景中,刷题耗时但效率无提升、偏科补学却差距扩大、孩子拖延喊不动、学习焦虑厌学等问题成为普遍痛点,多数家长将其归因于孩子智商、天赋或学习…...
神经网络实战之dsp实现神经网络vad-1
vad神经网络有很多不同的实现,这里的神经网络是基于pytorch实现的,网络结构如下: class MiniVAD(nn.Module):def __init__(self, n_fft512):super().__init__()self.input48 #输入B T 48# 融合层self.fusion nn.Sequential(nn.Linear(self.i…...
Java 核心四大基石:从 Object 源码到包装类陷阱的全维度复盘
让我们从两个常见的实际场景出发,看看开发者会遇到什么困惑。 场景一:如何在程序中获取“当前时间”? 你一定见过这样的界面: 直播画面右上角显示:2026 年 01 月 08 日 15:00:00(实时更新) 这个…...
Ostrakon-VL-8B零基础上手:无需代码,5分钟完成门店图片智能分析
Ostrakon-VL-8B零基础上手:无需代码,5分钟完成门店图片智能分析 1. 引言 想象一下,你是一家连锁便利店的区域经理,手下管着几十家门店。每周巡店检查,光是看照片、数货架、查价格标签,就要花掉大半天时间…...
2025年06月CCF-GESP编程能力等级认证Scratch图形化编程一级真题解析
本文收录于《Scratch等级认证CCF-GESP图形化真题解析》专栏,专栏总目录:点这里,订阅后可阅读专栏内所有文章。 一、单选题(每题 3 分,共 30 分) 第 1 题 2025 年 4 月 19 日在北京举行了一场颇为瞩目的人形机器人半程马拉松赛。比赛期间,跑动着的机器人会利用身上安装…...
用74ls10和74ls20与非门搭建四人表决器:从真值表到电路图的完整设计流程
用74LS10和74LS20与非门搭建四人表决器:从真值表到电路图的完整设计流程 在数字电路设计中,表决器是一个经典的教学案例,它不仅能帮助理解组合逻辑电路的基本原理,还能锻炼从理论到实践的完整设计能力。本文将手把手带你用74LS10…...
避坑指南:在华为云上为Python老项目配置代码检查与自动化构建(以Flask应用为例)
避坑指南:在华为云上为Python老项目配置代码检查与自动化构建(以Flask应用为例) 当我们需要将一个遗留的Python项目迁移到现代化开发流程时,往往会遇到各种"历史包袱"。本文将以一个从Python 2.7升级到3.7的Flask应用为…...
AdGuard浏览器扩展:企业级隐私保护与广告拦截解决方案
AdGuard浏览器扩展:企业级隐私保护与广告拦截解决方案 【免费下载链接】AdguardBrowserExtension AdGuard browser extension 项目地址: https://gitcode.com/gh_mirrors/ad/AdguardBrowserExtension AdGuard浏览器扩展是一款专注于隐私保护和广告拦截的开源…...
智能体架构的创新突破:Agent-S框架的技术解析与实战应用
智能体架构的创新突破:Agent-S框架的技术解析与实战应用 【免费下载链接】Agent-S Agent S: an open agentic framework that uses computers like a human 项目地址: https://gitcode.com/GitHub_Trending/ag/Agent-S Agent-S作为开源的智能体框架ÿ…...
