按顺序重命名fasta标头

时间:2016-10-20 20:32:54

标签: awk sed grep

我有多个fasta文件,每个文件有8个标题,总是按照相同的顺序(在物种方面)。例如,它就像

 grep -o -E "^>\w+" batch1.seq

 jgi
 jgi
 augustus_masked
 augustus_masked
 augustus_masked
 jgi
 augustus_masked
 augustus_masked

 grep -o -E "^>\w+" batch2.seq

给出

jgi
jgi
maker
maker
maker
jgi
maker
maker

无论标题如何,我都要将文件夹中文件的所有fasta标题(数量为8)重命名为

Ara
Soy
Gly
Tom
Whe
Cor
Nat
Blu

1 个答案:

答案 0 :(得分:2)

awk救援!

awk 'NR==FNR{names[NR]=$0; next} 
        /^>/{$1=">"names[++c]}1' names fasta > fasta.new

使用脚本时,请将新标题列表保留在文件names中。