переименование заголовков fasta по порядку

#awk #sed #grep

#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:

awk спешим на помощь!

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

сохраняйте свой новый список заголовков в файле names при использовании скрипта.