From f3265ba71686bc691563ff683dcca38b90c9fbdb Mon Sep 17 00:00:00 2001 From: Alexandre LUCAZEAU Date: Tue, 13 Sep 2022 21:12:52 +0200 Subject: [PATCH] ADD : calcul des tickets restaurants avec awk --- posts/TR.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 posts/TR.md diff --git a/posts/TR.md b/posts/TR.md new file mode 100644 index 0000000..dfef7b2 --- /dev/null +++ b/posts/TR.md @@ -0,0 +1,26 @@ +--- +title: "Préparer un dépot de tickets restaurant" +date: 2022-09-11T11:48:56+02:00 +tags: +- shell, awk, oneliner +categories : +- commandline +draft: false +description : "awk pour la restauration" +slug : "tickets-restaurant-awk" + +--- + +J'ai quelques tickets restaurant à trier et déposer au CRT. Le problème c'est qu'il faut leur donner le nombre exact et le montant. + +C'est long et fastidieux. J'ai une douchette à code barres, ça va être moins long et moins fastidieux :-) + +Dans le code barre, le montant est "hardcodé" entre le 13ème et le 16ème caractères. Il suffit donc de : + - scanner chaque ticket avec la douchette et renvoyer le tout dans un fichier + - extraire le chiffre entre la 13ème et le 16ème caractère inclus + - ajouter un point entre les 2 + - faire la somme + +mon onliner pour faire ça : + + awk '{substr($0,13,16);sub(/[0-9]{2}/, "&.",$1); s+=$1} END {print "Total :" s " Nombre de TR : " NR " Pour une moyenne de : " s / NR "€"}' mon_fichier