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

如何使用sed简易删除指定范围的多行字符串

sed 范围匹配删除指定多行内容方案

完全可以实现,sed原生支持起止正则匹配的区间操作,无需复杂命令即可满足需求。

执行命令

你可以直接使用以下命令实现目标:

# 先执行下面不带-i的命令测试输出是否符合预期
sed '/^tomcat\.util/,/\.jar$/d' /tmp/foobar.txt

# 确认输出正确后,加-i参数直接修改原文件
sed -i '/^tomcat\.util/,/\.jar$/d' /tmp/foobar.txt

命令说明

  • 范围语法/起始匹配规则/,/结束匹配规则/会自动匹配从第一个符合起始规则的行开始,到第一个符合结束规则的行为止的所有内容,包含起止行本身
  • 后缀的d参数代表删除匹配到的所有行
  • 正则中的.需要转义为\.,避免.匹配任意字符导致误匹配

执行后文件效果

命令执行完成后,/tmp/foobar.txt的剩余内容如下:

this is line 1

this is line 3


the end leave me
and me

补充说明

如果你需要在修改前自动备份原文件,可以将-i参数改为-i.bak,执行后会自动生成/tmp/foobar.txt.bak备份文件,避免误操作丢失原始内容。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 03:27:01