você pode usar grep para fornecer apenas as partes do arquivo com mais de 100 caracteres entre > e gravar os resultados em um novo arquivo (que deve funcionar com o fasta):
grep -Pzo '>[^>]{100,}' fasta.txt > fasta_wo_short_genes.txt
explicação:
-
-Pdiz ao grep para aceitar expressões regulares pérolas (por algum motivo, eu não consegui fazê-lo funcionar com expressões regulares comuns do grep) -
zdiz ao grep para ver o arquivo inteiro como uma grande linha -
odiz ao grep para produzir apenas as partes correspondentes (caso contrário, por causa doz, o resultado sempre será o resultado do arquivo inteiro se encontrar alguma correspondência)
a expressão regular:
-
>o caractere que separa suas seqüências de genes de vírus -
[^>]corresponde a qualquer caractere, exceto> -
{100,}corresponde a 100 ou mais repetições da expressão anterior (neste caso[^>])