感谢支持
我们一直在努力

Linux命令:sed d 循环

说明蓝色=命令名称


      浅绿=命令参数


      浅蓝=选项


      紫色=目录


      系统环境:CentOS  5.8  x86_64


内容如下:


650) this.width=650;” border=0>


sed语句:sed  ‘/./{H;$!d};x;/aa/d’  1


结果如图


650) this.width=650;” border=0>


解析:


650) this.width=650;” border=0>


第一行不是空,被/./匹配,放入保留空间,执行d,在读取下一行进入循环,知道读取的下一行不被/./匹配,不执行d,循环结束。此时保留空间内的内容为:


null\naa\nbb\ncc\n


继续读取下一行进行第二个循环,和第一次一样不再详细解释。


第三次循环关键在 $!d 最后一行没有执行 d 表示循环结束,执行了一侧完整的循环。若没有 $!d 则最后执行 d 然后下一行为空,无法读取,循环没有顺利完成,所以最后的一次循环不会被真正的保留到保留空间中,最后的结果如图:


650) this.width=650;” border=0>

赞(0) 打赏
转载请注明出处:服务器评测 » Linux命令:sed d 循环
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏