Переименуйте файлы генома FASTA с частью заголовка последовательности

ang спросил: 07 октября 2018 в 01:02 в: bash

Я хотел бы переименовать файлы FASTA с именем организма (хранится в файле) и идентификатором (часть имени файла).

Все файлы имеют одинаковый формат в имени файла и сохраненных данных, каждый В файле только один заголовок FASTA и соответствующая последовательность.

Исходное имя файла:

$ head GCF_000008205.1_ASM820v1_genomic.fna>NC_007295.1 Mycoplasma hyopneumoniae J, complete genome
CCAAAATCAACTTTATTAAATGTGCTAAATAAAGTTGATAAAATGTTTGCAAAAACATTTTTGTTGTTTTAAACAAAACA
AATTGATTTAAAAATTATACTACAAAATTAAAGGAAAATTTATAAAATGCAAACAAATAAAAATAATTTAAAGGTTAGAA
CACAGCAAATTAGACAACAAATTGAAAATTTATTAAATGATCGAATGTTGTATAACAACTTTTTTAGCACAATTTATGTA
...

Я хочу переименовать только имя файла, используя идентификатор сборки (GCF_000008205 .1) в имени файла, а также во втором и третьем словах заголовка FASTA (Mycoplasma hyopneumoniae):

Mycoplasma_hyopneumoniae_GCF_000008205.1.fna

я пробовал это:

for fname in *.fna; do
mv -- "$fname" \
"$(awk 'NR==1{printf("%s_%s_%s\n",$2,$3,substr($1,2));exit}' "$fname")".fna
done

result:

Mycoplasma_hyopneumoniae_NC_007295.1.fna

Но результат показывает код перед именем организма, а не идентификатор, который меня интересует, который находится во имя оригинальный файл.

Спасибо!

0 ответов