Soit le fichier "donjon" :
LANCELOT:DULAC:chevalier:200GODEFROY:DE BOUILLON:chevalier:300ARTHUR::roi:150MERLIN:L'ENCHANTEUR:magicien:0GODEFROY:DE BOUILLON:chevalier:400LANCELOT:DULAC:chevalier:300
Soit le fichier programme "cumul.awk" :
BEGIN {
FS=":"
print "Statistiques sur le nombre de sarrasins occis"
nb=0
}
$1 ~ /[a-zA-Z]/ {
cumul[$1] += $4
for (i=1; (i <= nb) && (list[i] != $1; i++)
if ( i > nb) {
nb ++
list[nb]=$1 $2
}
}
END {
printf ("%.20s\t%.20s \n","Zigoto", "Cumul")
for (i=1; i <= nb; i++)
printf ("%.20s\t%.20s \n",
list[i], cumul[list[i]])
}
La commande
awk -f cumul.awk donjon
Statistiques sur le nombre de sarrasins occis Zigoto Cumul LANCELOT DULAC 500 GODEFROY DE BOUILLON 700 ARTHUR 150 MERLIN L'ENCHANTEUR 0