2016-12-09 76 views
-1
#!/bin/ksh 

a=8.3 
b=10.20 
diff=`expr $b - $a` 
echo "$diff" 

它給UNIX shell腳本減法浮點數

EXPR:0402-046一指定的經營者需要數字參數。的錯誤,我想輸出爲1.9

+0

你可以使用'bc'代替: 'echo $ b- $ a | bc'。在命令行'expr 3.2 - 2'中給出了相同的結果。看起來expr不能浮動:請參閱http://unix.stackexchange.com/questions/165165/arithmetic-operations-with-expr-and-variables – fredtantini

+0

@Giri:您可以提供有關所提供答案的反饋,並接受它(答案左側的小勾號)標記已解決的帖子。 – Inian

+0

根據有幫助的人[在此處稍後提問](http://stackoverflow.com/q/41165923/472495)添加的評論,我們確實希望您與協助您的人員進行互動。我已經在下面提出了這個帖子,並將你的帖子降低了。 – halfer

回答

1

你不需要bc對於這一點,在ksh

#!/bin/ksh 

a=8.3 
b=10.20 
printf "%.2f\n" "$((b - a))" 

輸出

使用本機的算術運算符
$ ksh script.ksh 
1.90