Несколько файлов в формате fasta собрать в единый файл.
seqret "/P/y21/term3/pr9/to_join/*" "fasta::task1.fasta"
Один файл в формате fasta с несколькими последовательностями разделить на отдельные fasta файлы.
seqretsplit "/P/y21/term3/pr9/to_split/coding1.fasta" "fasta::this_doesnt_work.fasta"
В выдаче несколько файлов, в каждом лежит по одной последовательности.
Из файла с аннотированной хромосомой в формате gb (из GenBank или RefSeq) или embl (из ENA) вырезать три кодирующих последовательности по указанным координатам "от", "до", "ориентация" и сохранить в одном fasta файле.
extractseq "NZ_CP015223.gb" "fasta::task3.fasta" -regions 1121-1182,1289-1468,1787-2266 -sreverse1 Y -separate Y
Транслировать (с первого кодона, то есть в первой рамке) кодирующие последовательности, лежащие в одном fasta файле, в аминокислотные, используя указанную таблицу генетического кода, и положить результат в один fasta файл.
transeq "/P/y21/term3/pr9/coding.fasta" "fasta::task4.fasta" -frame 1 -table 0
Вывести открытые рамки длиной не менее заданной, имеющиеся в данной нуклеотидной последовательности, используя указанную таблицу генетического кода.
getorf "/P/y21/term3/pr9/coding.fasta" "fasta::task5.fasta" -minsize 10 -table 23
Перевести выравнивание из формата fasta в формат msf.
seqret "/P/y21/term3/pr9/alignment.fasta" "msf::task6.msf"
Выдать в файл число совпадающих букв между второй последовательностью выравнивания и всеми остальными (на выходе только имена последовательностей и числа).
infoalign "/P/y21/term3/pr9/alignment.fasta" "task7.infoalign" -refseq 2 -only -idcount -name
Перевести аннотации особенностей из файла формата gb или embl в табличный формат gff.
featcopy "/P/y21/term3/pr9/chromosome.gb" "task8.gff" -offormat2 gff -warning N
Из данного файла с хромосомой в формате gb или embl получить fasta файл с кодирующими последовательностями.
extractfeat "NZ_CP015223.gb" "fasta::task9.fasta" -type CDS
Перемешать буквы в данной нуклеотидной последовательности.
shuffleseq "/P/y21/term3/pr9/coding.fasta" "fasta::task10.fasta"
Создать три случайных нуклеотидных последовательностей длины 100.
makenucseq "fasta::task11.fasta" -amount 3 -length 100 -filter
Найти частоты кодонов в данных кодирующих последовательностях.
cusp "/P/y21/term3/pr9/to_split/coding1.fasta" "task12.cusp"
Выровнять кодирующие последовательности соответственно выравниванию белков – их продуктов.
tranalign "/P/y21/term3/pr9/13/gene_sequences.fasta" "/P/y21/term3/pr9/13/protein_alignment.fasta" "fasta::task13.fasta"
Удалить символы гэпов из выравнивания.
degapseq "/P/y21/term3/pr9/alignment.fasta" "fasta::task14.fasta"
Перевести символы конца строки из формата Windows в формат Unix.
noreturn "crfile.fasta" "task15.noreturn"
Созданный скрипт:
#!/usr/bin/bash
epost -db "nuccore" -id ${1} -format "acc" | efetch -format "docsum" -mode "json" > "${1}.json"
epost -db "nuccore" -id ${1} -format "acc" | elink -target "protein" | efetch -format "fasta" > "${1}_proteins.fasta"
epost -db "assembly" -id ${2} -format "acc" | efetch -format "docsum" -mode "xml" | xtract -pattern "DocumentSummary" -element "Id,ContigN50"
Для его проверки я использовал уже упомянутую запись NZ_CP015223 в базе данных Nucleotide и сборку генома GCA_003604245.1.
Выдача скрипта:
2022931 46102