IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Unix Discussion :

Formatage d'un fichier


Sujet :

Unix

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 12
    Par défaut Formatage d'un fichier
    Bonjour à tous,

    Je suis en train de formater un fichier qui correspond à ça :

    A A C C A A T C T T T T
    A A C G A A C C T A T T
    A C T C T A G C C T A T
    A A C C A A C C T T T A

    où pour chaque ligne toutes les lettres sont séparées par une tabulation. Seulement le nombre de ligne et de colonne peut-être variable.

    Et je souhaiterai avoir 1 colonne sur 2 un / comme ici :

    A/A C/C A/A T/C T/T T/T
    A/A C/G A/A C/C T/A T/T
    A/C T/C T/A G/C C/T A/T
    A/A C/C A/A C/C T/T T/A

    j'ai déjà écris cela mais ça ne marche pas :

    sed "s/\([ACGT]\)\([ACGT]\)/\1\/\2\\t/g" filename

    Pouvez-vous m'aider ???

    Cordialement

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Salut,

    Un truc comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $ cat plop
    A       A       C       C       A       A       T       C       T       T       T       T
    A       A       C       G       A       A       C       C       T       A       T       T
    A       C       T       C       T       A       G       C       C       T       A       T
    A       A       C       C       A       A       C       C       T       T       T       A
    
    $ sed 's#\([^\t]*\)\(\t\)\([^\t]*\)\(\t\|$\)#\1/\3\4#g' plop
    A/A     C/C     A/A     T/C     T/T     T/T
    A/A     C/G     A/A     C/C     T/A     T/T
    A/C     T/C     T/A     G/C     C/T     A/T
    A/A     C/C     A/A     C/C     T/T     T/A
    Comme ta mise en forme n'est pas très explicite, il se peut que le résultat final ne soit pas conforme à tes attentes, mais la syntaxe devrait s'adapter facilement...


  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 12
    Par défaut
    Je suis désolé d'abuser mais lorsque je tape la ligne de commande sed, ça ne fonctionne pas chez moi.... ça me sort exactement la même chose que lorsque je tape "cat plop".

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Quel système ?
    Quelle version de sed ?
    C'est bien des tabulations entre tes lettres au moins ?

    Pour vérifier que c'est bien des tabulations.
    Le résultat doit ressembler à ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $ cat -A plop
    A^IA^IC^IC^IA^IA^IT^IC^IT^IT^IT^IT$
    A^IA^IC^IG^IA^IA^IC^IC^IT^IA^IT^IT$
    A^IC^IT^IC^IT^IA^IG^IC^IC^IT^IA^IT$
    A^IA^IC^IC^IA^IA^IC^IC^IT^IT^IT^IA$

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 12
    Par défaut
    Je suis sous Mac OS X 10.6.8.
    Je ne connais pas la version de mon sed.
    Et lorsque je fais cat -A il me dit cat : illegal option.

    Merci de ton aide

  6. #6
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Citation Envoyé par chandlerbing87 Voir le message
    Je suis sous Mac OS X 10.6.8.
    Je ne connais pas la version de mon sed.
    Essaie avec sed --version
    Et lorsque je fais cat -A il me dit cat : illegal option.
    Essaie avec sed alors sed -n l fichier

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 12
    Par défaut
    Voila ce que j'obtiens en faisant sed -n l fichier

    A\tA\tC\tC\tA\tA\tT\tC\tT\tT\tT\tT$
    A\tA\tC\tG\tA\tA\tC\tC\tT\tA\tT\tT$
    A\tC\tT\tC\tT\tA\tG\tC\tC\tT\tA\tT$
    A\tA\tC\tC\tA\tA\tC\tC\tT\tT\tT\tA$

    pour sed --version ça ne marche pas

Discussions similaires

  1. Formatage d'un fichier XML
    Par Zikas-r dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 10/02/2009, 10h48
  2. pb formatage d'un fichier txt avec awk ou SHELL en géneral
    Par ammah dans le forum Applications et environnements graphiques
    Réponses: 1
    Dernier message: 26/09/2008, 16h25
  3. [DOM] Mise en page (formatage) d'un fichier XML
    Par kokusho dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 04/09/2008, 22h19
  4. Formatage d'un fichier .CSV
    Par Riko1 dans le forum Langage
    Réponses: 1
    Dernier message: 16/02/2007, 12h50
  5. Formatage nom de fichier et url
    Par damjal dans le forum Langage
    Réponses: 2
    Dernier message: 14/02/2007, 01h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo