gpt4 book ai didi

unix - 从字符串的第 n 次出现开始读取直到特定字符串

转载 作者:行者123 更新时间:2023-12-01 13:55:35 25 4
gpt4 key购买 nike

我有一个包含内容的文件:

[ATTRIBUTES]
name="name1"
default="abcd"
[TABLE]
name="tabCol"
default="abcd"
type="abc"
[TABLE]
name="tabCol1"
default="abcd1"
type="abc1"
[TABLE]
name="tabCol2"
default="abcd2"
type="abc2"

我想获取具体的标题内容。就像我想要标题 [ATTRIBUTES] 第一次出现的内容一样,输出应该是:

[ATTRIBUTES]
name="name1"
default="abcd"

同样如果想要标题表第二次出现的内容,输出应该是:

[TABLE]
name="tabCol1"
default="abcd1"
type="abc1"

这我必须使用 unix shell 脚本来完成。我想最好使用 sed,但不知道如何。
所以请帮忙。
提前致谢

最佳答案

这是使用 awk 实现的另一种方法:

parse.awk

BEGIN { FS = "[][]" }
/^\[/ && f == n { exit }
/^\[/ && $2 == heading { f++ }
f == n

像这样运行它:

awk -f parse.awk heading=TABLE n=2 infile

输出:

[TABLE]
name="tabCol1"
default="abcd1"
type="abc1"

关于unix - 从字符串的第 n 次出现开始读取直到特定字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19732646/

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