我有一个multiFASTA文件,即包含多于1个FASTA序列的文件。每个序列前面都有一个标题,如下所示:
>NC_005042.1 etc
>NC_003272.1 etc
>NC_003276.1 etc
...
我想将这些标头重命名为数字,因此输出如下:
>1
>2
>3
...
最后,我需要将“>”之后的每个标签替换为一系列有序数字。
答案 0 :(得分:0)
如果您知道标头都以>
开头,而其他行不是,则可以使用
awk 'BEGIN {nr=0} /^>/ {nr++; print ">" nr; next} {print}' fastafile
换句话说:在行之前,将变量nr设置为0。
当一行以>
开头时,抬起nr
,用nr
打印标题行,并跳过其余命令。
其余命令仅打印当前行。
awk '/^>/ {nr++; print ">" nr; next} 1' fastafile
较短,使用默认值0 var awk变量和1
之后的默认打印操作。