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

如何使用bash下sed/awk/grep等工具提取内含img标签的article标签

解决方案

你可以用awk或者sed实现需求,两种方案如下:

方案1:使用awk(兼容性更好,逻辑更易读)

运行命令:

awk '/<article class.*article--nyheter/{buf="";f=1} f{buf=buf $0 ORS} /<\/article>/{f=0; if(buf ~ /<img /) print buf}' onlyArticlesWithOutSpace.html > test.html

命令逻辑说明:

  • 匹配到符合class规则的article起始标签时,清空内容缓存、标记进入article块
  • 在article块内时,逐行把内容存入缓存
  • 匹配到article结束标签时,标记退出块,检查缓存中是否包含<img 子串,存在则输出整个缓存的article块内容

方案2:使用GNU sed

运行命令:

sed -n '/<article class.*article--nyheter/{:a;N;/<\/article>/!ba;/<img /p}' onlyArticlesWithOutSpace.html > test.html

命令逻辑说明:

  • 匹配到article起始标签后,循环读取后续行直到凑齐完整的article闭合块
  • 检查完整块中是否包含<img 子串,存在则输出整个块

注意:以上命令仅适配无嵌套article标签、结构固定的输入内容,符合你提供的样例格式场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 07:45:03