gpt4 book ai didi

linux - 'N' 和 'D' 无法按预期使用 sed

转载 作者:可可西里 更新时间:2023-11-01 11:48:36 27 4
gpt4 key购买 nike

sed 'N; D' testfile

测试文件包含:

this is the first line
this is the second line
this is the third line
this is the fourth line

我正在使用 RHEL 6,输出如下:

this is the fourth line

根据我的理解,N 只是将下一行拉入模式空间,D 只是删除模式空间的第一行。因此,输出应该是:

this is the second line
this is the fourth line

有人可以解释为什么输出会像上面提到的那样吗?

最佳答案

根据 the documentation :

D

If pattern space contains no newline, start a normal new cycle as if the d command was issued. Otherwise, delete text in the pattern space up to the first newline, and restart cycle with the resultant pattern space, without reading a new line of input.

(强调我的。)

听起来这会从头开始重新启动您的 sed 程序,读取并删除行,直到用完输入,此时缓冲区中只剩下最后一行。

关于linux - 'N' 和 'D' 无法按预期使用 sed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40964907/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com