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 :

Trier les doublons à partir de plusieurs caractères


Sujet :

Shell et commandes GNU

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Mai 2016
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : Mai 2016
    Messages : 19
    Points : 8
    Points
    8
    Par défaut Trier les doublons à partir de plusieurs caractères
    Bonjour,

    Je possède une liste de fichier avec des noms du genre:

    monfichier_0102_0304_document.txt
    monfichier_0102_0305_document.txt
    monfichier_0102_0306_document.txt
    monfichier_0103_0304_document.txt
    monfichier_0103_0305_document.txt


    Mon but est de retirer les doublons lié à la première serie de chiffre (0102 / 0103 etc...)

    J'ai utilisé la commande suivante pour trié les doublon qu'a partir de la seconde chaîne de caractère
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    awk -F _ '{ print $2 }' monfichier.txt | sort -u
    ce qui m'affiche:

    0102
    0103

    cependant j'aimerais retrouver les noms de mes fichiers complets
    Comment puis-je faire ?

    Merci à vous !

  2. #2
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Bonjour

    Retirer les doublons, pourquoi pas ? Mais lequel on garde ? Le dernier ? Si c'est le cas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    awk -F _ '{a[$2]=$0;} END{for (i in a) print a[i];}' fichier.txt
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Mai 2016
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : Mai 2016
    Messages : 19
    Points : 8
    Points
    8
    Par défaut
    Hello,

    Effectivement c'est bien ça !

    Un grand merci à toi

  4. #4
    Expert éminent sénior Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 279
    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 279
    Points : 12 727
    Points
    12 727
    Par défaut
    Et si on veut garder le premier de chaque:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     sort -t\_ -k 2,2 -u fichier.txt
    Cordialement.

  5. #5
    Membre éprouvé Avatar de balkany
    Homme Profil pro
    Touriste
    Inscrit en
    Juillet 2017
    Messages
    346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Touriste

    Informations forums :
    Inscription : Juillet 2017
    Messages : 346
    Points : 977
    Points
    977
    Par défaut
    Ou bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    awk -F'_' '!a[$2]{a[$2]++; print}' fichier.txt
    ou bien encore (avec des additions inutiles, mais peut-être plus joli) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    awk -F'_' '!a[$2]++' fichier.txt

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

Discussions similaires

  1. Trier les enregistrements à partir de 1er mot
    Par FedEtRic dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 30/07/2009, 18h36
  2. Réponses: 8
    Dernier message: 10/10/2008, 15h11
  3. Réponses: 1
    Dernier message: 10/10/2008, 06h53
  4. boucle for pour trier les doublons
    Par gerald57 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/05/2008, 15h40
  5. Trier les doublons à la rédaction, dans l'éditeur HTML
    Par veevee dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 28/03/2008, 15h37

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