grep 过滤“满足任一条件“(OR 逻辑) 核心思路用|或连接多个模式。有几种写法。一、扩展正则grep -E最常用⭐用-E开启扩展正则模式间用|分隔grep -E 条件1|条件2|条件3 file.txt例子# 匹配含 error 或 warning 或 fail 的行 grep -E error|warning|fail log.txt|在扩展正则里表示或只要一行满足任意一个就被选出。二、egrep等价老写法egrepgrep -Eegrep error|warning|fail log.txt新系统建议用grep -Eegrep已被标记为废弃。三、基本正则grep要转义|不加-E时|需要转义成\|grep error\|warning\|fail log.txt写着麻烦一般直接用-E更清晰。四、grep -e多个模式用多个-e指定多个模式也是 OR 关系grep -e error -e warning -e fail log.txt适合模式里本身含特殊字符、不想写正则时。五、grep -f从文件读多个模式模式很多时写进一个文件每行一个用-f# patterns.txt 每行一个关键词 grep -f patterns.txt log.txt常用增强选项grep -Ei error|warning|fail log.txt # -i 忽略大小写 grep -En error|warning|fail log.txt # -n 显示行号 grep -Ec error|warning|fail log.txt # -c 统计匹配行数 grep -Ew err|warn log.txt # -w 全词匹配 grep -Eo error|warning|fail log.txt # -o 只输出匹配部分 命令 | grep -E error|warning # 管道过滤命令输出对比AND同时满足怎么写顺便说下都满足AND——不能直接用 grep 一个模式常用管道串联# 同时包含 error 和 2024 的行 grep error log.txt | grep 2024实用例子# 从进程列表找 chrome 或 code 或 wxwork忽略大小写 ps -ef | grep -Ei chrome|code|wxwork # 日志里找多种错误级别并显示行号 grep -Ein error|warn|fatal|exception app.log # 统计满足任一关键词的行数 grep -Ec PASS|FAIL|TIMEOUT test.log一句话总结最推荐grep -E 条件1|条件2|条件3 文件用|表示或满足任一即匹配。也可用grep -e 模式1 -e 模式2多模式或grep -f 文件模式很多时。加-i忽略大小写、-n显示行号、-c计数。