35、高级Shell脚本中的sed编辑器使用指南

高级Shell脚本中的sed编辑器使用指南

1. sed脚本的强大功能

sed编辑器脚本能够反转文本文件中的行顺序,这展示了在sed脚本中使用保留空间的强大之处。例如,以下脚本可以实现行反转:

sed -n '{
1!G
h
$p
}' data2

同时,Linux系统中还有 tac 命令可以实现文本文件的反转显示,它是 cat 命令的反向操作。

2. 改变sed脚本的执行流程

通常,sed编辑器从脚本顶部开始按顺序处理命令,但 D 命令是个例外,它会使sed编辑器不读取新行而返回到脚本顶部。sed编辑器还提供了改变命令脚本执行流程的方法,类似于结构化编程环境。

2.1 分支命令(Branching)

分支命令的格式为 [address]b [label] ,其中 address 参数决定触发分支命令的数据行, label 参数定义分支跳转的位置。若 label 参数缺失,分支命令会执行到脚本末尾。

例如:

sed '{
2,3b
s/This is/Is this/
s/line./test?/
}' data2

此脚本会跳过数据流中第二行和第三行的两个替换命令。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值