Comment puis-je faire des calculs de base dans un script shell?

Je veux effectuer quelques opérations mathématiques dans le shelll. Par exemple:

5+50*3/20 + (19*2)/7 

J'ai essayé:

  #!/bin/bash read equ echo "scale=3; $equ" | bc -l 

Production attendue:

  17.929 

Ma sortie:

  17.928 

bc tronque, essayez ceci à la place:

 printf "%.3f\n" $(echo "$equ" | bc -l) 

Vous pouvez également utiliser perl -e "print $expr" ,

p.ex. perl -e "print 5+50*3/20 + (19*2)/7" 17.9285714285714 perl -e "print 5+50*3/20 + (19*2)/7" sorties 17.9285714285714