Le Fri, 3 Dec 2010 17:07:45 +0100,
"Sylvain L. Sauvage" <[email protected]> a écrit :
> Le vendredi 3 décembre 2010 à 16:29:06, Frédéric Boiteux a écrit
> :
> > > awk 'BEGIN {s = 0} {s += $5} END {print s}'
> >
> > Ah, oui, mais awk, c'est de la triche ;-P
>
> Tu l’utilisais déjà dans ton exemple :oP
>
> Sinon, tu as
> … | { s=0; while read i; s=$[ $s + $i ]; done; echo $s; }
>
> Mais $[] ne connaît que les entiers.
>
> Franchement, regrouper tous les 'grep | cut | awk' dans un
> seul 'awk' (ou perl, ruby…) me paraît souvent plus propre et
> plus clair (euh, ok, pas forcément avec perl…). Quand un outil
> est dépassé, autant le remplacer que d’enfiler les tubes (et
> donc les processus) avec des commandes sous-utilisées.
>
Merci à tous pour vos réponses.
J'avais pour ma part cherché du coté de « bc » ou autres outils
mathématiques, sans trop penser à awk ou perl… Mon exemple n'est sans
doute pas le mieux trouvé car on peut effectivement calculer l'info par
ailleurs, mais ce n'était pas la première fois que je tombais sur le
cas d'une liste de nombres à additionner depuis un pipe shell, et je
pensais vraiment qu'il devait y avoir un petit outil Unix pour cela.
Bonne semaine,
Fred.
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers [email protected]
En cas de soucis, contactez EN ANGLAIS [email protected]
Archive: http://lists.debian.org/20101206135825.586a1...@prem6s