PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : BASH und Fließkomma


nalye
2011-04-10, 03:50:03
Hallo zusammen, ich habe folgendes Problem:

Ich möchte ein paar Berechnungen anstellen, indem ich wie folgt vorgegangen bin:


$ echo "(29.7/1.35)*2*(188/204)*(5/6)" | bc -l
33.79084967320261437869


Soweit erst mal gut zum Testen der Syntax an sich. Wenn ich jedoch Variablen einlesen möchte, so wie hier:


#!/bin/bash

echo "Bandbreite Slot in MHz: "
read $BANDBREITE
echo "FEC: "
read $FEC
echo "Modulation in Bit: "
read $MODULATION

echo "($BANDBREITE/1.35)*$MODULATION *(188/204)*$FEC" | bc -l


dann schlägt das Ganze komplett fehl. Selbst wenn ich keine "krummen" Werte nehme kommt Folgendes:


$ sh calc.sh
Bandbreite Slot:
2
FEC:
2
Modulation:
2
(standard_in) 1: parse error


Nun ist meine Frage: Wo zur Hölle ist mein Fehler? Ich stehe irgendwie massiv auf dem Schlauch... Liegt es am Bruchstrich in der Variable $FEC?

Markus89
2011-04-10, 09:52:08
Du darfst bei read kein Dollar vor die Variable schreiben.

nalye
2011-04-10, 10:20:15
*An die Stirn klatsch* War wohl doch zu spät die Nacht, danke!