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 :

Supprimer les doublons avec awk


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 162
    Par défaut Supprimer les doublons avec awk
    Bonjour à tous !
    Donc j'expose mon problème :
    -j'ai un fichier contenant les lignes suivantes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    user_id,type_id,slot
    1,12,1
    1,4,2
    2,12,1
    2,4,2
    3,12,1
    3,4,2
    4,10,1
    5,10,1
    6,10,1
    6,3,2
    7,11,1
    8,11,1
    9,11,1
    10,7,1
    11,7,1
    12,7,1
    12,3,2
    13,7,1
    En fait je voudrais supprimer les doublon seulement en comparant la 1ère colonne pour obtenir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    1,12,1
    2,12,1
    3,12,1
    ...

  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,

    awk est une obligation ?

    Sinon avec "sort" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sort -t ',' -k 1,1 -nu fichier

  3. #3
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 349
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 349
    Par défaut
    Salut,

    Sinon, une version awk mais si vraiment utile:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     awk -F, '{if ($1 in A) next ; else print $0 ;A[$1]=""}' fichier

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 162
    Par défaut
    Ok, merci pour les commandes je vais tester

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 162
    Par défaut
    Merci cela fonctionne parfaitement avec awk Résolu !

  6. #6
    Rédacteur

    Avatar de ok.Idriss
    Homme Profil pro
    IS Consultant
    Inscrit en
    Février 2009
    Messages
    5 220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : IS Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 5 220
    Par défaut
    Bonsoir.

    Citation Envoyé par Hellgast Voir le message
    Merci cela fonctionne parfaitement avec awk Résolu !
    Et pour la version avec sort ?

    Autre version avec awk avec écriture un peu plus légère :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    awk -F, '!($1 in t){t[$1]=1; print $0}' fichier
    Idriss

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

Discussions similaires

  1. [AC-2007] Supprimer les doublons avec un module
    Par ziedyah dans le forum VBA Access
    Réponses: 1
    Dernier message: 17/12/2012, 07h20
  2. Supprimer les doublons dans une colonne avec condition
    Par sims92.66 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 22/02/2012, 18h58
  3. Réponses: 6
    Dernier message: 12/02/2008, 20h02
  4. Supprimer les doublons avec ou sans tri préalable
    Par ouskel'n'or dans le forum Contribuez
    Réponses: 0
    Dernier message: 19/12/2007, 20h24
  5. Supprimer les doublons avec order by non affiché
    Par DidRocks dans le forum Oracle
    Réponses: 1
    Dernier message: 19/09/2007, 09h42

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