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

如何用sed删除两个revolving_door_cad匹配模式间的行(保留第二个模式)

解决sed删除首个匹配模式到下一个匹配模式间内容(保留第二个模式)的问题

问题说明

需要删除文件中从第一个匹配revolving_door_cad的行到下一个该模式出现的行之间的所有内容(包含第一个匹配行),仅保留第二个匹配行及之后的内容。原命令sed '/revolving_door_cad/,/revolving_door_cad/{//!d;}' file会保留两个匹配行,无法满足需求。

解决方案

使用带循环与替换逻辑的sed命令:

sed '/revolving_door_cad/{:a;N;/revolving_door_cad/!ba;s/.*\n//}' your_file

命令拆解

  • /revolving_door_cad/{ ... }:匹配到第一个目标模式时,执行大括号内的操作
  • :a:定义循环标签a
  • N:将下一行内容追加到当前模式空间(合并当前行与下一行)
  • /revolving_door_cad/!ba:若模式空间中未找到第二个目标模式,跳回标签a继续读取下一行
  • s/.*\n//:找到第二个目标模式后,将模式空间内从开头到第二个匹配行前的所有内容(含第一个匹配行和中间行)清空,仅保留第二个匹配行及后续内容

示例验证

原文件内容

.....
.....

'revolving_door_cad': {
   'id': 'as-hp-pass-files',
   'labels': {
        'name': 'jonah',
        'type': 'File',
        'Eligible': 'true',
        'Applied': 'ransomware'
         },
         'data': {
           'file.pcx': 'home/work/300029_LATAM/PROD-AS-ransomware/account',
        },
      },
'revolving_door_cad': {
  ....
  ....

执行命令后输出

'revolving_door_cad': {
  ....
  ....

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 04:00:04