Bash/Scripting/Calc: Unterschied zwischen den Versionen

Aus SchnallIchNet
Wechseln zu: Navigation, Suche
 
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt)
Zeile 10: Zeile 10:
 
</pre>
 
</pre>
  
==Float operations==
+
 
 +
== Float operations ==
 +
 
 
Da die bash nur integer-werte verwendet ist hier vorsicht geboten
 
Da die bash nur integer-werte verwendet ist hier vorsicht geboten
 +
 
  # echo $((17/4))
 
  # echo $((17/4))
 
  4
 
  4
 
  #
 
  #
 +
 +
 
die rechenoperation liefert hier leider keinen float-wert, also keine fliesskomma zahl zurueck.<br/>
 
die rechenoperation liefert hier leider keinen float-wert, also keine fliesskomma zahl zurueck.<br/>
 
hier muss man sich entsprechend mit den programm 'bc' behelfen:
 
hier muss man sich entsprechend mit den programm 'bc' behelfen:
 +
 
  # echo 17/4 | bc -l
 
  # echo 17/4 | bc -l
 
  4.25000000000000000000
 
  4.25000000000000000000
 
  #
 
  #
 
-l|--mathlib --> Define the standard math library.
 
-l|--mathlib --> Define the standard math library.
 +
 +
 +
um die anzahl der nachkommastellen auszugeben/zu bestimmen bietet bc eine funktion scale:
 +
 +
# echo "scale(17/4)" | bc -l
 +
20
 +
# echo "scale=4; 17/4" | bc -l
 +
4.2500

Aktuelle Version vom 24. Juli 2012, 09:54 Uhr

Integer operations

# echo $((1+1))
2
#

# echo $[1+1]
2
#


Float operations

Da die bash nur integer-werte verwendet ist hier vorsicht geboten

# echo $((17/4))
4
#


die rechenoperation liefert hier leider keinen float-wert, also keine fliesskomma zahl zurueck.
hier muss man sich entsprechend mit den programm 'bc' behelfen:

# echo 17/4 | bc -l
4.25000000000000000000
#

-l|--mathlib --> Define the standard math library.


um die anzahl der nachkommastellen auszugeben/zu bestimmen bietet bc eine funktion scale:

# echo "scale(17/4)" | bc -l
20
# echo "scale=4; 17/4" | bc -l
4.2500