2017-09-27 1 views
0
average=$(echo "scale=2;$combine/$num | bc") 

Ceci est ma tentative la plus récente et elle économise simplement l'échelle = 2; 256/3 en moyenne. J'ai essayé tant de façons différentes de le formuler et je n'arrive pas à le faire fonctionner. Toute aide serait appréciée. Le script bash démarre avec une commande pour exécuter le script dans un shell ksh, si cela est important.Essayer de sauvegarder la sortie d'un calcul bc dans une variable dans un script bash

+6

La citation de fermeture est mal placée, il devrait être: 'moyenne = $ (echo "échelle = 2; $ combiner/$ num" | bc)' – hek2mgl

+0

Je suis suis un imbécile sans valeur. C'était ça. Je vous remercie! – user1916548

Répondre

1

Essayez ceci:

average=$(bc <<< "scale=2;$combine/$num") 

Ou comme le premier commentaire dit. Vous avez égaré la citation.

average=$(echo "scale=2;$combine/$num" | bc)