Код: Выделить всё
>10MH:A|PDBID|CHAIN|SEQUENCE
MIEIKDKQLTGLRFIDLFAGLGGFRLALESCGAECVYSNEWDKYAQEVYEMNFGEKPEGDITQVNEKTIPDHDILCAGFP
CQAFSISGKQKGFEDSRGTLFFDIARIVREKKPKVVFMENVKNFASHDNGNTLEVVKNTMNELDYSFHAKVLNALDYGIP
QKRERIYMICFRNDLNIQNFQFPKPFELNTFVKDLLLPDSEVEHLVIDRKDLVMTNQEIEQTTPKTVRLGIVGKGGQGER
IYSTRGIAITLSAYGGGIFAKTGGYLVNGKTRKLHPRECARVMGYPDSYKVHPSTSQAYKQFGNSVVINVLQYIAYNIGS
SLNFKPY
>10MH:C|PDBID|CHAIN|SEQUENCE
GTCAGCGCATGG
>10MH:B|PDBID|CHAIN|SEQUENCE
CCATGCGCTGAC
Код: Выделить всё
>10MH:A|PDBID|CHAIN|SEQUENCE MIEIKDKQLTGLRFIDLFAGLGGFRLALESCGAECVYSNEWDKYAQEVYEMNFGEKPEGDITQVNEKTIPDHDILCAGFPCQAFSISGKQKGFEDSRGTLFFDIARIVREKKPKVVFMENVKNFASHDNGNTLEVVKNTMNELDYSFHAKVLNALDYGIPQKRERIYMICFRNDLNIQNFQFPKPFELNTFVKDLLLPDSEVEHLVIDRKDLVMTNQEIEQTTPKTVRLGIVGKGGQGERIYSTRGIAITLSAYGGGIFAKTGGYLVNGKTRKLHPRECARVMGYPDSYKVHPSTSQAYKQFGNSVVINVLQYIAYNIGSSLNFKPY
>10MH:C|PDBID|CHAIN|SEQUENCE GTCAGCGCATGG
>10MH:B|PDBID|CHAIN|SEQUENCE CCATGCGCTGAC
(Первая и вторая строки - это одно целое, т.к. такие длины строк парсер переносит)
Решение уже написано, но оно получилось корявым трёхэтажным awk. Какой наиболее красивый способ?
Моё решение:
Код: Выделить всё
gawk '{printf $0" "}' input.txt | gawk 'BEGIN {RS=">"} {if (NR!=1) {print ">"$0}}' | sed 's/ //g' | sed 's/|SEQUENCE/|SEQUENCE /' | grep :$j | tr " " "\n" >> a.out