sed 删除多行

本文介绍了如何使用sed命令按行号范围和正则表达式删除文本文件中的多行。具体方法包括指定行号如5,10d,匹配模式如/hello/,+2d,以及删除特定内容之间的行如/start/,/end/d。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、可以使用sed命令的d(delete)命令和行号来删除多行,例如要删除第5-10行,可以使用以下命令:

sed '5,10d' filename

其中的5和10表示要删除的行号的范围,d表示删除的命令,filename表示要操作的文件名

2、可以使用以下命令使用正则表达式去匹配模式来删除多行:

sed '/pattern/,+N d'

其中,pattern 是要匹配的正则表达式,N 是要删除的行数。这条命令会删除从包含 pattern 的行开始的 N 行。
例如,要删除从包含 “hello” 的行开始的两行,可以使用以下命令:

sed '/hello/,+2 d'

这将删除从包含 “hello” 的行开始的两行

3、使用sed命令打开文本文件,并使用正则表达式匹配需要删除的多行。例如,以下命令将打开文件test.txt,并匹配以“start”开始,以“end”结尾的多行:

sed -i '/start/,/end/d' test.txt

4、sed删除匹配行的上一行

sed -i -n '$!N;/匹配内容/!P;D' 待处理文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值