#1 Le 11/10/2017, à 21:25
- sokar
Supprimer une ligne après une chaine de caractères donnée
Bonjour,
J'essaye de supprimer une ligne après une chaine de caractères
Exemple:
>ORJ07415.1 uracil-DNA glycosylase [Organism test]
MERLLGETYTDISLIKPQNKPLNKQVHEGIENCNLCKRHQHSKPITGLFNPTSKLAFITLTPMLDSQLHFLNNLKAAMLE
SIIQKVFNYPLKDCSILSLLKCDSNSLNLEEEINACLPHLTWQLDNSAPKVIIVFGEVLPKRLLNLSKEESFGRIVSLKT
>ORJ07417.1 UDP-N-acetylglucosamine 1-carboxyvinyltransferase [Organism test]
MDFLEIVGQVPLKGEVEISGAKNSALPILAATLLSHQEVKIKSLPQVVDIKAMALLLQNLGAELEWLNPHTLQLSAKSLH
HTEATYDLVRKMRASILVLGPLLARFKECLVSLPGGCAIGARPVDLHLKAMQQLGAEIKIEQGYIHAKAPKGLKGNDILF
je veux avoir le résultat suivant :
>ORJ07415.1
MERLLGETYTDISLIKPQNKPLNKQVHEGIENCNLCKRHQHSKPITGLFNPTSKLAFITLTPMLDSQLHFLNNLKAAMLE
SIIQKVFNYPLKDCSILSLLKCDSNSLNLEEEINACLPHLTWQLDNSAPKVIIVFGEVLPKRLLNLSKEESFGRIVSLKT
>ORJ07417.1
MDFLEIVGQVPLKGEVEISGAKNSALPILAATLLSHQEVKIKSLPQVVDIKAMALLLQNLGAELEWLNPHTLQLSAKSLH
HTEATYDLVRKMRASILVLGPLLARFKECLVSLPGGCAIGARPVDLHLKAMQQLGAEIKIEQGYIHAKAPKGLKGNDILF
J'ai essayé la commande suivante mais aucun résultat
sed -nr 's/^.*"(>[A-Z]*[0-9]*\/.\/1)".*$/\1/p' 106_reduced.faa
Merci pour votre aide
Hors ligne
#2 Le 11/10/2017, à 23:42
- Watael
Re : Supprimer une ligne après une chaine de caractères donnée
salut,
il faut expliquer un peu quand même !
tu veux
garder le premier "mot" sur la ligne qui commence par le caractère > , ou supprimer ce qui apparaît après le premier blanc ? c'est pareil !
dans ton expression : des caractères alphabétiques, des nombres, un pint, et un 1, il y a des guillemets en trop, la protection d'un slash qui n'existe pas sur la ligne, et la précision d'une fin de ligne inutile.
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#3 Le 12/10/2017, à 05:52
- pingouinux
Re : Supprimer une ligne après une chaine de caractères donnée
Bonjour,
Si j'ai bien compris :
sed -r 's/^(>[A-Z]+[0-9]+\.1).*/\1/' 106_reduced.faa
Hors ligne
#4 Le 12/10/2017, à 13:16
- sokar
Re : Supprimer une ligne après une chaine de caractères donnée
Bonjour,
Merci beaucoup pour vos réponses. La commande de pingouinux fait exactement ce que je veux faire; Désolée pour les erreurs que vous avez remarquez sur ma commande. J'ai de la difficulté à comprendre la commande sed et les expressions régulière.
Cordialement
Hors ligne