1. #1
    Membre chevronné

    Homme Profil pro
    Responsable projets techniques
    Inscrit en
    février 2003
    Messages
    974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable projets techniques
    Secteur : Biens de consommation

    Informations forums :
    Inscription : février 2003
    Messages : 974
    Points : 1 889
    Points
    1 889

    Par défaut [UNILIGNE] Compter le nombre de lignes par "identifiant" dans un fichier

    Bonjour à tous,

    ça faisait un bail mais je venais proposer une petite contribution : j'avais besoin de déterminer, dans un fichier type CSV, la répartition des lignes par rapport à une colonne donnée.

    Exemple : soit un fichier genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    blahblah|A|blahblah
    blahblah|B|blahblah
    blahblah|A|blahblah
    Je cherche à avoir :
    Y a ptet plus simple, mais voici une solution en perl (edit suite remarque de Lolo78) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    perl -ne '$a{(split /\|/)[1]}++; END {print qq($_ $a{$_}\n) for (sort {$a <=> $b} keys %a);}'
    Remplacez ce qu'il faut dans le split pour utiliser votre séparateur et modifier le [1] pour utiliser le bon numéro de colonne dans votre fichier (chez moi, la seconde colonne avec un séparateur pipe).
    Remplacez éventuellement le sort (ici du numérique).

    Bonne continuation

  2. #2
    Rédacteur/Modérateur

    Avatar de Lolo78
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    mai 2012
    Messages
    3 103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mai 2012
    Messages : 3 103
    Points : 10 088
    Points
    10 088
    Billets dans le blog
    1

    Par défaut

    Bonjour,
    oui, c'est bien, mais je mettrais personnellement le bloc END après le bloc d'alimentation du hash, cela me paraîtrait plus facilement lisible.

  3. #3
    Membre chevronné

    Homme Profil pro
    Responsable projets techniques
    Inscrit en
    février 2003
    Messages
    974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable projets techniques
    Secteur : Biens de consommation

    Informations forums :
    Inscription : février 2003
    Messages : 974
    Points : 1 889
    Points
    1 889

    Par défaut

    Sans doute, j'avoue que j'ai copié/collé un exemple avec un bloc END ne l'ayant moi même jamais utilisé

Discussions similaires

  1. [PowerShell] Compter le nombre de fois qu'apparaît un chaine dans un fichier
    Par olivierjouanno dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 16/04/2014, 15h07
  2. Réponses: 7
    Dernier message: 07/06/2011, 12h20
  3. Réponses: 2
    Dernier message: 05/09/2007, 22h10

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