This is a test version of Biostars. For the public version, visit https://www.biostars.org.
how to remove description from header?

I have a header like this-

>sp|A0A0H2Z7X0|TPBB_PSEAB Diguanylate cyclase TpbB OS=Pseudomonas aeruginosa (strain UCBPP-PA14) OX=208963 GN=tpbB PE=1 SV=1
MNRRRRYTGSNPSLRRVLYRAHLGVALVAVFTAGLAVTLVGLLTLRAYADPNQQLIARSI
SYTVEAAVVFGDAQAAEESLALIASSEEVSSAIVYDRQGQPLASWHRESTGPLHLLEQQL

And I want my header like this

>A0A0H2Z7X0 
MNRRRRYTGSNPSLRRVLYRAHLGVALVAVFTAGLAVTLVGLLTLRAYADPNQQLIARSI
SYTVEAAVVFGDAQAAEESLALIASSEEVSSAIVYDRQGQPLASWHRESTGPLHLLEQQL

Thank you!

fasta

2 answers

Under the assumption that everything starts with sp:

sed 's/>sp|/>/;s/|.*//' YourSequences.fa > YourNewSequences.fa

You can use awk too for this propose-

cat yourdata.fasta

>sp|A0A0H2Z7X0|TPBB_PSEAB Diguanylate cyclase TpbB OS=Pseudomonas aeruginosa (strain UCBPP-PA14) OX=208963 GN=tpbB PE=1 SV=1
MNRRRRYTGSNPSLRRVLYRAHLGVALVAVFTAGLAVTLVGLLTLRAYADPNQQLIARSI
SYTVEAAVVFGDAQAAEESLALIASSEEVSSAIVYDRQGQPLASWHRESTGPLHLLEQQL

cat yourdata.fasta |awk 'BEGIN { FS=OFS="|" } /^>/ { print ">" $2; next }1'
>A0A0H2Z7X0
MNRRRRYTGSNPSLRRVLYRAHLGVALVAVFTAGLAVTLVGLLTLRAYADPNQQLIARSI
SYTVEAAVVFGDAQAAEESLALIASSEEVSSAIVYDRQGQPLASWHRESTGPLHLLEQQL

Log in to answer this question.