使用GREP从数据库文件(.pdb)生成表

时间:2012-09-11 19:00:13

标签: grep

我所拥有的PDB文件夹包含以下模式的信息:

*HEADER 'protein date ID'
TITLE  'title of document here
AUTHOR ' the authors listed here' 
AUTHOR ' continued..'
SOURCE 'source organism (s)'
SOURCE 'continued'
SOURCE 'continued'
COMPND 'compound or complex studied'
COMPND 'continued'

正如您所看到的,此文件中的源和其他信息会扩展为多行。我想使用GREP命令在这些PDB文件中创建一个包含此信息的表。我无法将多行分组为一个并生成一个包含诸如TITLE,AUTHOR,SOURCE ......等列的表格

我的理由是能够在PDB文件的表格中显示信息,并通过作者或来源的新研究过滤,这将在实际网站上节省大量时间。

谢谢

1 个答案:

答案 0 :(得分:0)

我认为grep不是正确的工具,我建议sedawk。这是一个sed解决方案(或者可能不是一个完整的解决方案,具体取决于您所需的输出):

sed ':r;$!{N;br};:s;s/\nSOURCE//2;ts' file.pdb

它只处理SOURCE行。

这是一个更通用的版本:

sed ':r;$!{N;br};:s;s/\(\n[A-Z]\+\)\(.*\)\1/\1\2/;ts' file.pdb