You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用awk从文本提取first_match与second_match匹配对的实现方法

问题1:仅输出每个匹配对的first_match和second_match两行

使用以下awk脚本:

awk '/first_match/{print FILENAME " - " $0; f=1} f && /second_match/{print FILENAME " - " $0; f=0}' test1.txt

逻辑说明:

  • 匹配到first_match时,直接输出带文件名前缀的当前行,同时将标记位f设为1
  • 只有标记位f为1时,才会校验是否匹配second_match,匹配成功则输出带文件名前缀的当前行,同时重置标记位f为0
  • 中间无关行不会触发任何输出逻辑,自动跳过

问题2:仅输出每个匹配对中的second_match行

使用以下awk脚本:

awk '/first_match/{f=1} f && /second_match/{print FILENAME " - " $0; f=0}' test1.txt

逻辑说明:

  • 匹配到first_match时仅激活标记位f,不输出内容
  • 标记位为1时匹配到second_match才输出对应行,同时重置标记位,无前置有效first_match的second_match不会触发输出

内容的提问来源于stack exchange,提问作者Tax Max

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 22:54:08