[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [shell] additions



Le Fri, 3 Dec 2010 17:07:45 +0100,
"Sylvain L. Sauvage" <Sylvain.L.Sauvage@free.fr> 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.


Reply to: