Bonjour,
J'ai un fichier classement.txt contenant sur chaque ligne deux informations :
1) le nom du joueur
2) son score
à chaque fois qu'on execute mon script celui-ci demande d'entrer un nom et ensuite ce dernier, suivi du score, est envoyé >> dans classement.txt que je trie ensuite sur la deuxième colonne (pour établir un classement des joueurs).
Le problème c'est qu'un joueur qui va jouer n fois se retrouvera n fois dans le classement, alors que je ne voudrais conserver que le meilleur score. Comment faire ?
J'ai pensé appliquer uniq à la première colonne mais la deuxième ne suivra pas aussi... Voici mon code :
Merci
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
20
21
22
23 #!/bin/bash read -p " Entre ton nom d'utilisateur" name echo "Recopiez le plus vite possible la phrase suivante : je suis le plus rapide" echo "Quand vous etes pret tapez sur entree" read entree DEBUT=$(date +%s%N) read texte FIN=$(date +%s%N) let NANO="$FIN-$DEBUT" let SECONDES="$NANO/1000000000" let MICRO="($NANO-1000000000*$SECONDES)/1000000" if [ "$texte" = "je suis le plus rapide" ] then echo "tu as mis $SECONDES secondes et $MICRO ms" else echo "tu as fait des fautes de frappe" fi let TEMPS="1000*$SECONDES+$MICRO" CLASS=classement.txt CLASSTEMP=.classement2 echo "$name,$TEMPS" >> $CLASS sort -t "," -n -k 2 $CLASS > $CLASSTEMP cp $CLASSTEMP $CLASS![]()
Partager