multifastaファイルのヘッダー名を変更する

multifastaファイルのヘッダー名を変更する

このような高速ファイルが複数あります

>aaaaa.1_prot_CAA66754.1_10
MEKLLDAYLSSLRLNRRQVSEQTGLNYTTLQRASDKDALMISPRILWGIAMMVDKTPGQVLDELIELEMK
>bbbbb.1_prot_CAA66753.1_11
MMSKQDRINRRRRNIMKDAHRIAKLIVSNVGDYMVAMKLALKTVYAYKAMRKEVSSRGNAVEMHTLPLLD
GYARQQFEPEFVAGIPAWAIKKDFMSSSAQDILYFTIDTKVVKETEKAVEIEFATKNPKEHGYVDHHHTW
VAKSIMAA

タイトルをこのように変更しsedたいawk

>aaaaa.1_10
MEKLLDAYLSSLRLNRRQVSEQTGLNYTTLQRASDKDALMISPRILWGIAMMVDKTPGQVLDELIELEMK
>bbbbb.1_11
MMSKQDRINRRRRNIMKDAHRIAKLIVSNVGDYMVAMKLALKTVYAYKAMRKEVSSRGNAVEMHTLPLLD
GYARQQFEPEFVAGIPAWAIKKDFMSSSAQDILYFTIDTKVVKETEKAVEIEFATKNPKEHGYVDHHHTW
VAKSIMAA

sedしかし、私は少ししか知りません。

sed 's/.\(.\)$/\1/'

各行の 2 番目から最後の文字を削除し、「-」の最初の項目を保持します。

ベストアンサー1

awk1つの方法は次のとおりです。

$ awk '/^>/{sub(/\.[^.]+/,"")}1' file
>aaaaa.1_10
MEKLLDAYLSSLRLNRRQVSEQTGLNYTTLQRASDKDALMISPRILWGIAMMVDKTPGQVLDELIELEMK
>bbbbb.1_11
MMSKQDRINRRRRNIMKDAHRIAKLIVSNVGDYMVAMKLALKTVYAYKAMRKEVSSRGNAVEMHTLPLLD
GYARQQFEPEFVAGIPAWAIKKDFMSSSAQDILYFTIDTKVVKETEKAVEIEFATKNPKEHGYVDHHHTW
VAKSIMAA

>これは、(ヘッダー行)で始まる行を変更することを考慮します。

.この行は、「文字で始まり、構成される文字列」パターンを置き換えます。いいえ「(最初の文字から始まり、次の文字を除く.一連の文字を意味します)と「nothing」を含めて削除します。..

1ルールブロックから外れたように見えることは、awkこれまでに行われたすべての可能な修正を含む現在の行を印刷するように指示します。

おすすめ記事