从multi fasta文件中的fasta序列末尾删除空格(*)

时间:2017-04-26 06:28:23

标签: awk sed grep

我有一个multifasta文件包含来自2个abinitio工具的预测蛋白质。每个序列最后都包含一个空格(*)。我想从文件中删除它。我的序列是这样的:

>snapgene1
SFLPSAEAIEKVLSHMSRRIIDDMKAELQQPEMRWFWP*
>snapgene2
SFLPSAEAIEKVLSHIIIIAAAAKKKPPFFDDMKAELQQPEMRWFWP*

我想要这样的序列:

>snapgen1
SFLPSAEAIEKVLSHMSRRIIDDMKAELQQPEMRWFWP
>snapgene2
SFLPSAEAIEKVLSHIIIIAAAAKKKPPFFDDMKAELQQPEMRWFWP

任何人都可以帮助我。三江源

2 个答案:

答案 0 :(得分:1)

如果文本存储在文件“temp.txt”中,则可以使用命令:

sed -i "s/*$//" temp.txt

答案 1 :(得分:0)

在awk中,如果你在file中保留你的法术语:

$ awk '{sub(/\*$/,"")}1' file
>snapgene1
SFLPSAEAIEKVLSHMSRRIIDDMKAELQQPEMRWFWP
>snapgene2
SFLPSAEAIEKVLSHIIIIAAAAKKKPPFFDDMKAELQQPEMRWFWP

它取代尾随*一无所获。