Faire des qcm simplement - retour accueil
git clone git://bebou.netlib.re/qcm
Log | Files | Refs | README |
commit 69d3468d643963014de12cb5f4ada44305942cc4 parent ca63340f09d78fcd2ab5dc398bfe9178436f8440 Auteurice: Arthur Pons <arthur.pons@unistra.fr> Date: Fri, 8 Nov 2024 18:19:48 +0100 Légère généricisation du parsage des logs Et meilleures identification des deux lignes concernées avec un gros commentaire. Normalement devrait fonctionner pour tout logs ayant sur la ligne au moins : "ip n'importe-quoi type-de-requête /chemin/réponse n'importe-quoi" où les espaces sont un ou plusieurs espaces. Donc en ce qui nous concerne, par exemple : 1.1.1.1 blabla truc muche GET /YFf/A blablabla truc much Diffstat:
M | qcm.sh | | | 5 | +++-- |
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/qcm.sh b/qcm.sh @@ -48,11 +48,12 @@ demander() { pattern="[$answers]$choix ";; esac - tail -fn0 "$logs" | stdbuf -oL grep -E "GET /$id/$pattern" >> $tmpd/in & + tail -fn0 "$logs" | stdbuf -oL grep -E " GET /$id/$pattern" >> $tmpd/in & # PARSAGE DE LOG tailpid=$! while :;do - res=$(< $tmpd/in sort $uopt -k1,1 | cut -d ' ' -f1,7 | cut -d'/' -f3 | + res=$(< $tmpd/in sort $uopt -k1,1 | + grep -Eo "/$id/[^ ]+ " | cut -d'/' -f3- | # PARSAGE DE LOG sed 's,%\([0-9A-F][0-9A-F]\),\\\\\x\1,g' | xargs printf "%b\n" | grep -v "^$" | sort | uniq -c | sort -rn)