Ich habe d1="11"
und d2="07"
. Ich möchte d1
und d2
in ganze Zahlen konvertieren und d1-d2
ausführen. Wie mache ich das in UNIX?
d1 - d2
gibt derzeit "11-07"
als Ergebnis für mich zurück.
Die Standardlösung:
expr $d1 - $d2
Sie können auch tun:
echo $(( d1 - d2 ))
beachten Sie jedoch, dass dies 07
als Oktalzahl behandelt wird! (also 07
ist das gleiche wie 7
, aber 010
unterscheidet sich von 10
).
Jede dieser Funktionen funktioniert von der Shell-Befehlszeile aus. bc
ist wahrscheinlich die einfachste Lösung.
Verwendung von bc :
$ echo "$d1 - $d2" | bc
awk
verwenden:
$ echo $d1 $d2 | awk '{print $1 - $2}'
Perl
verwenden:
$ Perl -E "say $d1 - $d2"
Python
verwenden:
$ python -c "print $d1 - $d2"
alle kehren zurück
4
let d=d1-d2;echo $d;
Das sollte helfen.