sed实例分析(二)--G和H的用法

本文介绍了如何使用sed命令实现对文件内容的反序显示,并详细解释了相关命令和执行流程。

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

一、示例文件及需求:

cat file

11111111

2222222

3333333

反序显示

二、sed处理及结果:

sed '1!G;h;$!d'

3333333

2222222

11111111

三、命令说明:

g G 复制/附加保持空间的内容到模式空间

h H 复制/附加模式空间的内容到保持空间

四、命令执行流程:

执行第一行,保存第一行保持空间,清除模式空间

执行第二行,保存第二行+第一行到保持空间,清除模式空间

执行第三行,保存第三行+第二行+第一行到保持空间,清除模式空间

 

COMM:代表命令,PATT:代表patternspace的内容,HOLD代表保持空间的内容,其他为sed输出的内容

PATT:11111111 <------Cycle1

HOLD:

COMM:1!G

COMM:h

HOLD:11111111

COMM:$!d

PATT:

PATT:2222222 <-------Cycle2

COMM:1!G

PATT:2222222\n11111111

COMM:h

HOLD:2222222\n11111111

 

COMM:$!d

PATT:

PATT:3333333 <---------Cycle3

COMM:1!G

PATT:3333333\n2222222\n11111111

COMM:h

HOLD:3333333\n2222222\n11111111

COMM:$!d

OUT:3333333\n2222222\n11111111

PATT:

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值