小编Mic*_*iel的帖子

从 bibtex 文件中提取选定条目的脚本

我有一个包含许多条目的大型 bibtex 文件,其中每个条目都有一般结构

@ARTICLE{AuthorYear,
item = {...},
item = {...},
item = {...},
etc
}
Run Code Online (Sandbox Code Playgroud)

(在某些情况下ARTICLE可能是不同的词,例如BOOK

我想要做的是编写一个简单的脚本(最好只是一个 shell 脚本)来提取给定 AuthorYear 的条目并将它们放入一个新的 .bib 文件中。

我可以想象,我可以通过 AuthorYear 识别条目的第一句话,通过单个结束识别最后一句,}并且可能用于sed提取条目,但我真的不知道如何准确地做到这一点。有人能告诉我我将如何实现这一目标吗?

它可能应该是这样的

sed -n "/AuthorYear/,/\}/p" file.bib
Run Code Online (Sandbox Code Playgroud)

但是由于}条目的第一项中的关闭而停止,因此给出了以下输出:

@ARTICLE{AuthorYear,
item = {...},
Run Code Online (Sandbox Code Playgroud)

所以我需要识别是否}是一行中唯一的字符,并且只有在这种情况下 'sed' 停止阅读。

sed shell-script text-processing

11
推荐指数
2
解决办法
1389
查看次数

标签 统计

sed ×1

shell-script ×1

text-processing ×1