gpt4 book ai didi

sed - 我想使用 sed 打印组的最后一行

转载 作者:行者123 更新时间:2023-12-02 03:08:21 25 4
gpt4 key购买 nike

我有如下所示的文件

Section1
George, 1998-1995
Peter, 1999-1990
Simon, 1988-1960
Section2
Gery, 2019-2015
John, 1984-1983
Thomson, 1978-1965

当我给出Section1时,预期输出是西蒙,1988-1960

像这样我有很多部分。我想用 sed 而不是 awk 来实现这一点。

我尝试过这样的。但它有行号硬编码。而且它还打印完整的范围

sed -n '/Section1/,4{p}'

在这里我可以删除硬编码。但无法打印最后一行。下一个部分的名称也即将到来。

sed -n '/Section1/ , /Section./{p}'

最佳答案

这可能对你有用(GNU sed):

sed '$b;N;/\nSection/P;D' file

创建一个两行的移动窗口,如果第二行开始于 Section 并且始终是最后一行,则打印第一行。

对于特定部分的最后一行,请使用:

sed -n '/^Section1/{:a;h;$!{n;/^\S/!ba};x;s/^\s*//p}' file

关于sed - 我想使用 sed 打印组的最后一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58371217/

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