gilou Modérateur Modzilla | rufo a écrit :
Ca dépend de pas mal de choses : ton niveau en dév, les outils à ta disposition, qui peuvent d'ailleurs dépendre de l'OS de la machine où tu fais le traitement.
Sous Linux, t'as Awk.
Après, en Perl, PHP ou Python, tu peux facilement faire un script qui lit ton fichier, extrait les 12 premiers caractères et utilise cette chaîne comme clé dans un tableau associatif, clé à laquelle tu associes un compteur. Si la clé n'existe pas dans le tableau, tu l'ajoutes et tu initialise le compteur à 1 ; si elle existe déjà tu fais +1 sur le compteur.
A la fin, tu fais une boucle sur le tableau : tu affiches chaque clé avec son compteur. Script qui se fait en 5 min quand on a l'habitude.
|
Yep!
en perl:
Code :
- my %h;
- open my $fh, "<", "fichier-de-data.txt";
- $h{substr($_, 0, 12)}++ while (<$fh> );
- print "$_ = $h{$_}\n" foreach (keys %h);
- close $fh;
|
et pour une variante un peu plus robuste et à la sortie triée
Code :
- use autodie;
- my %h;
- open my $fh, "<", 'fichier-de-data.txt';
- while (<$fh> ) {
- $h{substr($_, 0, 12)}++ if (/^[0-9A-Z]{12}/);
- }
- print "$_ = $h{$_}\n" foreach (sort keys %h);
- close $fh;
|
A+, Message édité par gilou le 01-12-2018 à 10:07:49 ---------------
There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! --
|