前言grep 是 Linux 最核心的文本搜索、日志过滤命令排查报错、筛选日志、过滤配置、批量匹配全部靠它。本文从基础用法到正则实战全覆盖工作高频场景看完彻底掌握 grep。一、grep 核心作用从文件/管道流中匹配包含指定关键词的行支持普通匹配 正则表达式。二、高频参数工作必背-n显示行号-i忽略大小写-v反向匹配排除关键词-c统计匹配行数-o只输出匹配内容-E支持扩展正则等价 egrep-r递归遍历目录搜索三、基础实战# 匹配包含 error 的行 grep error log.txt # 忽略大小写 grep -i error log.txt # 显示行号 grep -n error log.txt # 反向过滤排除空行 grep -v ^$ log.txt # 统计报错行数 grep -c error log.txt # 递归搜索整个目录 grep -r timeout /var/log/四、正则表达式实战核心进阶1. 常用正则元字符^行开头$行结尾.任意单个字符*前一个字符重复0次或多次.*任意所有字符[0-9]数字[a-z]小写字母|或条件2. 正则实战案例# 匹配以数字开头的行 grep ^[0-9] test.txt # 匹配以字母结尾的行 grep [a-z]$ test.txt # 匹配包含 error 或 warn 的行 grep -E error|warn log.txt # 匹配空行 grep ^$ test.txt # 匹配IP地址简易正则 grep -E [0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3} log.txt五、工作流水线实战最高频# 实时监控只看报错日志 tail -f app.log | grep -i error # 过滤有效日志排除空行和注释 grep -v ^# nginx.conf | grep -v ^$ # 查找配置中所有端口 grep -n listen nginx.conf六、总结1. 普通检索grep -ni 关键词 文件2. 排除内容grep -v3. 多条件或匹配grep -E a|b4. 日志排查标配tail -f | grep 过滤
Linux grep 文本过滤与正则实战——日志筛选、文本匹配神器
发布时间:2026/5/23 1:02:11
前言grep 是 Linux 最核心的文本搜索、日志过滤命令排查报错、筛选日志、过滤配置、批量匹配全部靠它。本文从基础用法到正则实战全覆盖工作高频场景看完彻底掌握 grep。一、grep 核心作用从文件/管道流中匹配包含指定关键词的行支持普通匹配 正则表达式。二、高频参数工作必背-n显示行号-i忽略大小写-v反向匹配排除关键词-c统计匹配行数-o只输出匹配内容-E支持扩展正则等价 egrep-r递归遍历目录搜索三、基础实战# 匹配包含 error 的行 grep error log.txt # 忽略大小写 grep -i error log.txt # 显示行号 grep -n error log.txt # 反向过滤排除空行 grep -v ^$ log.txt # 统计报错行数 grep -c error log.txt # 递归搜索整个目录 grep -r timeout /var/log/四、正则表达式实战核心进阶1. 常用正则元字符^行开头$行结尾.任意单个字符*前一个字符重复0次或多次.*任意所有字符[0-9]数字[a-z]小写字母|或条件2. 正则实战案例# 匹配以数字开头的行 grep ^[0-9] test.txt # 匹配以字母结尾的行 grep [a-z]$ test.txt # 匹配包含 error 或 warn 的行 grep -E error|warn log.txt # 匹配空行 grep ^$ test.txt # 匹配IP地址简易正则 grep -E [0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3} log.txt五、工作流水线实战最高频# 实时监控只看报错日志 tail -f app.log | grep -i error # 过滤有效日志排除空行和注释 grep -v ^# nginx.conf | grep -v ^$ # 查找配置中所有端口 grep -n listen nginx.conf六、总结1. 普通检索grep -ni 关键词 文件2. 排除内容grep -v3. 多条件或匹配grep -E a|b4. 日志排查标配tail -f | grep 过滤