如何使用 sed 命令将 fasta 序列中的 trim 中的 header 转换为物种名称并保留序列的主要文本?

How to trim the header in a fasta sequence to the species name and keeping the main text of the sequence using sed command?

fasta文件名:STD_PRO_1.fasta

我在那个 fasta 文件中有多个 header:

>ENA|AB000176|AB000176.1 甘露糖基转移酶的大肠杆菌 DNA,phosphoribosyl-ATP pyrophosphohydrolase:phosphoribosyl-AMP 环化水解酶,部分 cds。 GACCATATGATTGACGCCTATGTCAATCTCTCACATACATTGCTGGAAAGCAAATCCTGA GAGATGCTACCCCCGCCGTTGCTGCGGGGGCCAACGCGTTAATGCCGATTCTTCAGATTA TCAATCACTTCTCCGAGATCCAGCCCTTGATCCTGCAACAACACCAGCAGGTGATACATC公司 AAATCAGATGCCTCGTTGGTCAGTTCAAGCGGTCATGTACTGTCGCTGCCAGTGCGGTT

>ENA|AB000178|AB000178.1 甘露糖基转移酶的大肠杆菌 DNA,phosphoribosyl-ATP pyrophosphohydrolase:phosphoribosyl-AMP 环化水解酶,部分 cds。 GACCATATGATTGACGCCTATGTCAATCTCTCACATACATTGCTGGAAAGCAAATCCTGA GAGATGCTACCCCCGCCGTTGCTGCGGGGGCCAATGCGTTAATGCCGATTCTTCAGATTA TCAATCACTTCTCCGAGATCCAGCCCCTGATCCTGTAACAGCACCAGCAGGTGATACATC公司 AAATCAGATGCCTCGTTGGTCAGCTCAAAGCGGTCATGTACCGTTGGTGCCAGTGCGGTT

只保留header中的物种名称如下:

>大肠杆菌 GACCATATGATTGACGCCTATGTCAATCTCTCACATACATTGCTGGAAAGCAAATCCTGA GAGATGCTACCCCCGCCGTTGCTGCGGGGGCCAACGCGTTAATGCCGATTCTTCAGATTA TCAATCACTTCTCCGAGATCCAGCCCTTGATCCTGCAACAACACCAGCAGGTGATACATC公司 AAATCAGATGCCTCGTTGGTCAGTTCAAGCGGTCATGTACTGTCGCTGCCAGTGCGGTT

>大肠杆菌 GACCATATGATTGACGCCTATGTCAATCTCTCACATACATTGCTGGAAAGCAAATCCTGA GAGATGCTACCCCCGCCGTTGCTGCGGGGGCCAATGCGTTAATGCCGATTCTTCAGATTA TCAATCACTTCTCCGAGATCCAGCCCCTGATCCTGTAACAGCACCAGCAGGTGATACATC公司 AAATCAGATGCCTCGTTGGTCAGCTCAAAGCGGTCATGTACCGTTGGTGCCAGTGCGGTT

之前:

$ sed -n l test.fasta
>ENA|AB000176|AB000176.1 Escherichia coli DNA for mannosyl transferase$
GACCATATGATTGACGCCTATGTCAATCTCTACACTACATTGCTGGAAAGCAAATCCTGA GAGATGCTA$
$
>ENA|AB000178|AB000178.1 Escherichia coli DNA for mannosyl transferase$
GACCATATGATTGACGCCTATGTCAATCTCTACACTACATTGCTGGAAAGCAAATCCTGA GAGATGCTA$

之后:

$ sed '/^>/{ s/[^ ]* />/; s/ DNA.*//; s/ gene.*//; }' test.fasta
>Escherichia coli
GACCATATGATTGACGCCTATGTCAATCTCTACACTACATTGCTGGAAAGCAAATCCTGA GAGATGCTA

>Escherichia coli
GACCATATGATTGACGCCTATGTCAATCTCTACACTACATTGCTGGAAAGCAAATCCTGA GAGATGCTA