用’d’删除sed模式空间是否也可以保留空间?

用’d’删除sed模式空间是否也可以保留空间?,第1张

概述有人可以解释为什么会这样吗? 这是预期的: $echo -e "foo\nbar" | sed -n 'h; x; p'foobar 我将每一行放入保留空间,然后交换保持空间和图案空间,然后打印图案空间,以便打印每一行.现在,为什么以下不同? $echo -e "foo\nbar" | sed -n 'h; d; x; p' 我认为不会这样,因为我在交换之前删除了模式空间,所以无论如何应该将存 有人可以解释为什么会这样吗?

这是预期的:

$echo -e "foo\nbar" | sed -n 'h; x; p'foobar

我将每一行放入保留空间,然后交换保持空间和图案空间,然后打印图案空间,以便打印每一行.现在,为什么以下不同?

$echo -e "foo\nbar" | sed -n 'h; d; x; p'

我认为不会这样,因为我在交换之前删除了模式空间,所以无论如何应该将存储的行放回模式空间.它是x后面应该为空的保持空间,对吗?我删除了模式空间,然后交换.我保存的线路在哪里?

解决方法 使用d时,清除模式空间,读取下一行,并从脚本开头开始处理.因此,您永远不会实际到达x和p步骤,而只是复制到保留空间并删除. 总结

以上是内存溢出为你收集整理的用’d’删除sed模式空间是否也可以保留空间?全部内容,希望文章能够帮你解决用’d’删除sed模式空间是否也可以保留空间?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1027143.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存