Additionner deux réels en shell [Résolu/Fermé]

Signaler
Messages postés
150
Date d'inscription
lundi 5 novembre 2007
Statut
Membre
Dernière intervention
28 novembre 2011
-
 ess -
Bonjour,

Je souhaite faire l'addition de deux nombre réels dans un script shell. J'ai essayé de le faire de plusieurs manières mais aucune n'a donné un bon résultat.

La seule commande qui semble marché partiellement est la suivante :

addition='echo $var1 + $var2 | bc -l'


ça affiche le résultat avec une erreur :

script.sh: line 40: 1.560: command not found 


sachant que le 1.560 est le résultat attendu.

Qu'en pensez vous ?



4 réponses

Messages postés
36271
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
19 janvier 2021
5 850
Salut,

addition=$(echo "$var1 + $var2" | bc -l)

;-))
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 63550 internautes nous ont dit merci ce mois-ci

Messages postés
36271
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
19 janvier 2021
5 850
Affiche ton script !
Messages postés
150
Date d'inscription
lundi 5 novembre 2007
Statut
Membre
Dernière intervention
28 novembre 2011
17
ping1="0.456"
ping2="0.765"
ping3="0.973"
ping=$(echo "$ping1 + $ping2 + $ping3" | bc -l)
ping=$(echo "$ping / 3" | bc -l)
Messages postés
1231
Date d'inscription
mardi 7 juin 2011
Statut
Membre
Dernière intervention
24 mai 2015
327
ping1="0.456"
ping2="0.765"
ping3="0.973"
ping=$(echo "($ping1 + $ping2 + $ping3) / 3" | bc -l)

echo $ping

...
chez moi ce script fonctionne

(et merci zipe31 pour ta correction tout à l'heure :) )
j'obtiens le résultat décrit en faisant comme ça
var1=223 var2=654.21 
addition=$(echo $var1 + $var2 | bc -l)
$addition

alors en effet
./monScript: line 4: 877.21 : commande introuvable
Messages postés
150
Date d'inscription
lundi 5 novembre 2007
Statut
Membre
Dernière intervention
28 novembre 2011
17
pareil que loashu, en mettant toutes les opérations sur la même ligne ça fonctionne. mais si j'en ai deux qui se suivent la première fonctionne et la deuxième affiche une erreur.

Merci à tous pour votre aide .. c'est résolu :D

salut,

addition=$(echo "$var1 + $var2" | bc -l)
Messages postés
36271
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
19 janvier 2021
5 850
Salut,

;-))


Tu devrais mettre tes réponses en "Réponse" et non en "commentaires"
Bonjour,

J'utilise bash, et pour ajouter $var1 à $var2 et stocker le résultat dans $addition j'utiliserais cette ligne :

let addition=$var1+$var2

mais j'ai peut-être tord :p
Messages postés
36271
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
19 janvier 2021
5 850
Salut,

Malheureusement cette méthode ne s'applique qu'aux nombres entiers ;-((