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

Shell et commandes GNU Discussion :

AWK - Inversion de colonnes dans un fichier


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 8
    Par défaut AWK - Inversion de colonnes dans un fichier
    Bonjour je souahiterais inverser les colonnes 3 et 4 d'un fichier.

    Exemple :

    1;2;4;3;5
    A;B;D;C;E
    F;G;I;H;J
    K;L;N;M;O

    deviendrait

    1;2;3;4;5
    A;B;C;D;E
    F;G;H;I;J
    K;L;M;N;O

    Merci de votre aide.

  2. #2
    Membre éprouvé
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Par défaut
    Citation Envoyé par lolo05 Voir le message
    Bonjour je souahiterais inverser les colonnes 3 et 4 d'un fichier.

    Exemple :

    1;2;4;3;5
    A;B;D;C;E
    F;G;I;H;J
    K;L;N;M;O

    deviendrait

    1;2;3;4;5
    A;B;C;D;E
    F;G;H;I;J
    K;L;M;N;O

    Merci de votre aide.

    Bonjour.

    Ce fichier a t'il toujours le même nombre de colonnes?

    Si oui méthode naïve :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    awk -F\; '{print $1";"$2";"$4";"$3";"$5}' le_fichier_a_traiter > nom_du_fichier_de_sortie

  3. #3
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 8
    Par défaut
    Merci de ta réponse mais c'est justement ça le problème (mon exemple n'est pas correct) : le nombre de colonne n'est pas fixe !!!

    Je me disais qu'avec une expression régulière j'arriverai peut-être à quelque chose mais je suis fachée avec les ereg ou plutôt elles sont fachées avec moi !!!

  4. #4
    Membre éprouvé
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Par défaut
    Dans ce cas essaie plutôt :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     awk -F\; 'BEGIN {OFS=";"}{temp = $3; $3 = $4; $4 = temp; print }' le_fichier_a_traiter > le_fichier_de_sortie
    En considérant que ton séparateur est bien ";".

  5. #5
    Membre du Club
    Inscrit en
    Septembre 2009
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 8
    Par défaut
    Merci pour ta commande c'est exactement ça !!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBA-E] exportation de colonne dans un fichier word
    Par ricachu dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 24/09/2007, 17h42
  2. insertion d'une colonne dans un fichier
    Par yesil dans le forum Langage
    Réponses: 1
    Dernier message: 21/09/2007, 16h25
  3. Réponses: 4
    Dernier message: 13/12/2006, 17h10
  4. [débutant] nombre de colonne dan sun fichier csv
    Par mandagor dans le forum C++
    Réponses: 18
    Dernier message: 15/06/2005, 15h42

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