
Wie erstelle ich einen Taschenrechner mit Bash?
Beispiel
read -p "calculator count: " calc
echo '$((calc))' | bc
ich gebe ein
2+2
Ausgabe
(standard_in) 1: illegal character: $
wie repariert man ?
Ich möchte nur Texteingaben im Skript vornehmen, also für die Addition von + , - , x - und / . Ich gebe manuell ein
ich möchte zum Beispiel2+2+1*3/2
Nach der Eingabe erscheint das Ergebnis
Antwort1
Wie Terrance bereits anmerkte, sind doppelte Anführungszeichen erforderlich, da das $
Zeichen sonst wörtlich gesendet wird.
Entfernen Sie außerdem die doppelten Klammern, die Bash auffordern, die Berechnung durchzuführen. In diesem Fall müssten Sie nicht weiterleiten bc
, da Bash nur Ganzzahlarithmetik durchführt.
Es sollte also entweder
echo "$((calc))" # evaluated by Bash
oder
echo "$calc" | bc