2016-11-10 2 views
1

Ich habe einen Ausdruck als String deklariert und ich möchte, dass die Ausgabe das Ergebnis des Ausdrucks ist. Ich versuche, es mit Shell-Skripten zu lösen. Zum BeispielAusdruck als String (Shell-Skripting)

expr="123+456" 

Ausgang erwartet

579 

Vielen Dank im Voraus.

Antwort

0

Sie benötigen die arithmetic expransion Syntax:

$ expr="123+456" 
$ answer=$(($expr)) 
$ echo $answer 
579 
1

Ich würde vorschlagen, bc

> echo "123+456" | bc 
579 

Fest mit mehr zu sagen, ohne weitere Details über das, was Sie, dies zu tun versuchen

Siehe SO für weitere Details zu diesem nur tun mit bash

1

Wenn Sie nur mit Ganzzahlen arbeiten, kann Bash es tun:

((foo=123+456)) 
echo $foo 

Rückgabe: 579