Hi,
ich habe eine Variable zahl die den Inhalt z.B. 78.94 hat. Ich bräuchte aber die Zahl vor dem Punkt. Also entweder runden oder einfach abschneiden... es gibt doch bestimmt 'ne einfache Lösung, die ich übersehen habe?
im bash-script: dezimalzahl in integerzahl umwandeln
Moin,
bash kann keine Fliesskomma-Arithmetik. Wenn dir Abschneiden reicht, geht aber sowas:
[edit]Und jetzt weiss ich auch wieder, wie ich frueher "von Hand" gerundet hab:
[/edit]
Gruss,
- Silke -
bash kann keine Fliesskomma-Arithmetik. Wenn dir Abschneiden reicht, geht aber sowas:
Code: Alles auswählen
res=$(echo "scale=0;$var/1" | bc)
Code: Alles auswählen
tmp1=$(echo "$var*100" | bc)
tmp2=$(echo "$tmp1%100" | bc)
res=$(echo "($tmp1+$tmp2)/100" | bc)
Gruss,
- Silke -
Der Vorteil der Klugheit liegt darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.
- Kurt Tucholsky -
- Kurt Tucholsky -
Runden geht auch so:
Code: Alles auswählen
res=$(echo "scale=0;($var+0.5)/1"|bc)