grep+正则全套指令、代码详解、原理、执行输出、匹配过程-20260810

📅 2026/8/10 13:58:33
grep+正则全套指令、代码详解、原理、执行输出、匹配过程-20260810
文章目录grep+正则全套指令、代码详解、原理、执行输出、匹配过程一、先完整拆解所有 grep 参数含义第一部分:基础正则详解(原生grep,不带-E)1. `grep '^hello' test_grep.txt`符号拆解匹配流程最终输出2. `grep ';$' test_grep.txt`3. `grep '^$' test_grep.txt`4. `grep -v '^$' test_grep.txt`5. `grep 'h.llo' test_grep.txt`错误命令6. `grep 'ab*c' test_grep.txt`7. 字符集合 []第二部分 扩展正则 grep -E 完整解析扩展元字符对照表案例1:`grep -E 'ab+c' test_grep.txt`案例2:`grep -E 'ab?c' test_grep.txt`案例3:手机号正则案例4 | 或匹配案例5 分组 + 反向引用 `\1`案例6 IP正则第三部分:grep -P Perl高级正则(非贪婪、断言、转义简写)1.贪婪匹配原理2.非贪婪 `.*?`(最短匹配)3.零宽断言(重中之重,日志字段提取神器)示例:提取name=后面的值第四部分 Nginx访问日志实操拆解1.筛选404报错请求2.提取全部客户端IP3.提取GET请求接口路径第五部分 grep四兄弟完整对比总结第六部分 高频踩坑点逐条解释grep+正则全套指令、代码详解、原理、执行输出、匹配过程我基于刚刚创建好的test_grep.txt测试文件,逐行拆解命令参数、正则每一个符号含义、匹配流程、最终输出、踩坑说明先重新贴一遍完整测试数据源,所有演示都基于这份文本cattest_grep.txtEOF hello world Hello World hello-linux hi hello 13800138000 13900139001 136‑abc‑9999 ip:192.168.1.100 ip:172.16.0.5 name=zhangsan;age=24;sex=male name=lisi;age=22;sex=female # nginx config http port listen 80; listen 443; abc abbc abbbc abbbbc aa bb cc ab test@qq.com demo‑2026@163.com empty line error: connect failed warn: disk space low Exception: connection timeout EOF