我有一个包含多行的大文件:
HETATM 4373 C117 OL 33 9.263 58.080 60.981 1.00 0.00 MEMB C
HETATM 4374 H17R OL 33 8.636 57.596 61.761 1.00 0.00 MEMB H
HETATM 4375 H17S OL 33 8.582 58.712 60.368 1.00 0.00 MEMB H
HETATM 4376 C118 OL 33 10.292 58.992 61.644 1.00 0.00 MEMB C
HETATM 4377 H18R OL 33 9.777 59.849 62.127 1.00 0.00 MEMB H
HETATM 4378 H18S OL 33 10.998 59.390 60.886 1.00 0.00 MEMB H
HETATM 4379 H18T OL 33 10.874 58.445 62.416 1.00 0.00 MEMB H
TER
TER LEU 3030
我需要从文档中删除仅以HETATM或TER开头而不是TER +其他内容的行。 例如,使用
grep -E "HETATM|TER" ${ref} > output
它选择两种类型的TER记录。如何更准确地指定第二个选择以获得
HETATM 4373 C117 OL 33 9.263 58.080 60.981 1.00 0.00 MEMB C
HETATM 4374 H17R OL 33 8.636 57.596 61.761 1.00 0.00 MEMB H
HETATM 4375 H17S OL 33 8.582 58.712 60.368 1.00 0.00 MEMB H
HETATM 4376 C118 OL 33 10.292 58.992 61.644 1.00 0.00 MEMB C
HETATM 4377 H18R OL 33 9.777 59.849 62.127 1.00 0.00 MEMB H
HETATM 4378 H18S OL 33 10.998 59.390 60.886 1.00 0.00 MEMB H
HETATM 4379 H18T OL 33 10.874 58.445 62.416 1.00 0.00 MEMB H
TER
谢谢!
答案 0 :(得分:0)
grep '^HETATM$\|^TER$' file
将选择仅包含HETATM
或TER
的行。
E.g
TER PRO 312
无法匹配。