Нумерация файлов FASTA

У меня есть файл multiFASTA, т.е. файл, содержащий более 1 последовательности FASTA. Каждой последовательности предшествует заголовок, который выглядит так:

>NC_005042.1 etc
>NC_003272.1 etc
>NC_003276.1 etc 
...

Я хотел бы переименовать эти заголовки для чисел, поэтому вывод будет выглядеть так:

 >1
 >2
 >3
 ...

В заключение мне необходимо заменить каждый тег после ">" для ряда упорядоченных чисел.

1 ответ

Когда вы знаете, что все заголовки начинаются с > а других строк нет, можно использовать

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,

Другие вопросы по тегам