un outil de sondage - retour accueil
git clone git://bebou.netlib.re/kun
Log | Files | Refs | README |
commit 77410a5132e365bbbc4706c61c6d954f1ad893b4 parent be0fb87dcd3069d61ac9f668c15ab79f79c66263 Auteurice: Arthur Pons <arthur.pons@unistra.fr> Date: Mon, 18 Nov 2024 21:24:49 +0100 Correction bug affichage des réponses La boucle `for` sépare les arguments sur les blancs, une réponse "je sais pas" était donc comprises comme trois réponses séparées. Une boucle while + read fonctionne Diffstat:
M | commands.sh | | | 7 | ++++--- |
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/commands.sh b/commands.sh @@ -111,13 +111,14 @@ results() { answers=$(cat /tmp/kun.$id/question) _cmdlog "kun results $id" - for answer in $(cat /tmp/kun.$id/question);do - names=$(grep -l $answer /tmp/kun.$id/*-* | grep -v '/question:' | grep -v ^$) + cat /tmp/kun.$id/question | + while read answer;do + names=$(grep -l "$answer" /tmp/kun.$id/*-* | grep -v '/question:' | grep -v ^$) [ -z "$names" ] \ && nb=0 \ || { names=$(printf "%s\n" $names | xargs -n1 basename | cut -d'-' -f1) nb=$(printf "%s\n" $names | wc -l); } - printf "%d %s %s\n" $nb $answer $(echo "$names" | paste -s -d';' -) + printf "%d %s %s\n" $nb "$answer" $(echo "$names" | paste -s -d';' -) done | sort -t' ' -k1 -rn }