Linux中grep命令使用说明

Linux中grep命令使用说明

grep是Linux系统中最常用的文本搜索工具,全称是Global Regular Expression Print,支持正则表达式搜索,可根据指定模式过滤/提取匹配的文本行。以下是最常用参数及其作用,按功能分类整理:

一、模式匹配控制类

-i:忽略大小写差异,匹配时不区分大小写字母。

-v:反向匹配,只输出不包含指定模式的行。

-w:整词匹配,只匹配模式是完整单词的行,不匹配单词的一部分。

-x:整行匹配,要求模式与整行内容完全一致才会匹配。

-G:使用基本正则表达式(BRE)匹配,这是grep默认模式。

-E:使用扩展正则表达式(ERE)匹配,等同于egrep,支持更多正则元字符,更适合复杂匹配。

-F:将搜索模式视为固定字符串,而非正则表达式,等同于fgrep,只做简单字符串匹配。

二、输出格式控制类

-n:在输出匹配行的同时,显示该行在文件中的行号,方便快速定位。

-c:只输出匹配行的总数量,不输出具体的匹配行内容(一行出现多次仍只计为1次)。

-l:只输出包含匹配内容的文件名,不输出具体匹配行,适合批量定位文件。

-L:只输出不包含匹配内容的文件名,多用于排除筛选。

-o:只输出每行中匹配模式的部分,而非输出整行内容。

-q:静默模式,不输出任何匹配结果(仅通过命令返回值判断是否匹配,常用来做条件判断)。

-s:不显示"文件不存在"或"无匹配文本"这类错误信息。

--color:对匹配到的文本内容高亮显示,方便阅读。

三、范围与上下文控制类

-r/-R:递归搜索,自动遍历指定目录及其所有子目录下的文件进行匹配。

-A :After,输出匹配行后,额外再输出匹配行后面的num行,常用于查看报错后续堆栈。

-B :Before,输出匹配行后,额外再输出匹配行前面的num行,常用于查看报错前的操作。

-C :Context,输出匹配行后,额外再输出匹配行前后各num行,是日志分析最常用的上下文参数。

四、其他常用参数

-f :从指定文件中读取多个搜索模式,每行一个模式,实现批量匹配。

-m :每个文件最多匹配num次后就停止搜索,可提升大文件搜索效率。

-V/--version:显示当前grep命令的版本信息。

常用命令

bash 复制代码
grep -rn --color 'aaaaaaa' /a/b/c.log -A 10
相关推荐
Android系统攻城狮13 分钟前
Linux FFmpeg深度解析之av_dump_format调用流程与实战(十一)
linux·运维·服务器·ffmpeg·1024程序员节·音视频进阶
Android系统攻城狮27 分钟前
Linux FFmpeg深度解析之avcodec_find_decoder调用流程与实战(十二)
linux·运维·服务器·ffmpeg·1024程序员节·音视频进阶
小白的码BUG之路37 分钟前
K8s -- 启动一主二从节点
linux·运维·服务器
Escalating_xu43 分钟前
【Linux 网络编程】IP 分片与重组:3000 字节的数据报,怎样拆开又拼回来?
linux·网络·tcp/ip
小相会自律1 小时前
全平台远程控制软件推荐2026:Win/Mac/Linux/手机/鸿蒙互通哪款好
linux·macos·智能手机·todesk·teamviewer·向日葵
风娜1 小时前
【Linux网络】UDP 服务器怎么写?从 socket、bind 到 recvfrom/sendto,手写完整回显服务器
linux·服务器·网络
静以修身zzz1 小时前
OpenStack对象存储-Swift、OpenStack编排管理-heat、OpenStack网络管理-neutron
linux·运维·服务器·架构·openstack·swift
一技安身2 小时前
MySQL 8.4.13 LTS 通用二进制包(Linux免安装版)完整教程
linux·mysql·adb
迷途之人不知返2 小时前
【动态库与静态库】-3-静态链接与加载
linux
谙弆悕博士2 小时前
debian快速换源
linux·运维·windows·debian·下载·换源·网络问题