歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> SHELL編程

使用shell進行數學運算

可以利用 let、(())、[]進行基本的算術操作,高級操作使用bc更加高效。

直接看代碼把,輸出很清楚。

let
[linuxidc 22:17 ~]$ no1=4
[linuxidc 22:24 ~]$ no2=5
[linuxidc 22:24 ~]$ let result=no1+no2
[linuxidc 22:24 ~]$ echo $result
9
[linuxidc 22:24 ~]$ let result=result + 0.9 # 運算符兩側不能有空格
-bash: let: +: syntax error: operand expected (error token is "+")
[linuxidc 22:25 ~]$ let result=result+0.9 # 只能進行整數運算
-bash: let: result=result+0.9: syntax error: invalid arithmetic operator (error token is ".9")
[linuxidc 22:25 ~]$ echo $result
9
[]
[linuxidc 22:26 ~]$ result=$[no1+no2]
[linuxidc 22:27 ~]$ echo $result
9
[linuxidc 22:27 ~]$ result=$[no1+no2+1]
[linuxidc 22:27 ~]$ echo $result
10
(())
[linuxidc 22:28 ~]$ result=$((1+1))
[linuxidc 22:28 ~]$ echo $result
2
[linuxidc 22:28 ~]$ result=$(( 10 +1))
[linuxidc 22:29 ~]$ echo $result
11
bc
[linuxidc 22:29 ~]$ echo "4*3.5" | bc
14.0
[linuxidc 22:29 ~]$ echo "4*3.54" | bc
14.16
[linuxidc 22:30 ~]$ result=$(echo "$no1*0.44" | bc)  # 作為子shell計算結果
[linuxidc 22:30 ~]$ echo $result
1.76[linuxidc 22:30 ~]$ echo "scale=2;3/8" | bc # 設定小數精度
.37
[linuxidc 22:31 ~]$ echo "scale=4;3/8" | bc
.3750
[linuxidc 22:31 ~]$ echo "scale=6;3/8" | bc
.375000[linuxidc 22:31 ~]$ no=100
[linuxidc 22:33 ~]$ echo "obase=2;$no" | bc # 輸出為2進制,默認輸入進制為10進制
1100100
[linuxidc 22:33 ~]$ no=1100100
[linuxidc 22:33 ~]$ echo "obase=10;ibase=2;$no" | bc # 指明輸出進制和輸入進制
100[linuxidc 22:34 ~]$ echo "sqrt(100)" | bc
10
[linuxidc 22:35 ~]$ echo "10^10" | bc
10000000000

cat命令利用Linux重定向合並文件 http://www.linuxidc.com/Linux/2015-01/112122.htm

Shell編程淺析 http://www.linuxidc.com/Linux/2014-08/105379.htm 

Linux Shell參數替換 http://www.linuxidc.com/Linux/2013-06/85356.htm

Shell for參數 http://www.linuxidc.com/Linux/2013-07/87335.htm

Linux/Unix Shell 參數傳遞到SQL腳本 http://www.linuxidc.com/Linux/2013-03/80568.htm

Shell腳本中參數傳遞方法介紹 http://www.linuxidc.com/Linux/2012-08/69155.htm

Shell腳本傳遞命令行參數 http://www.linuxidc.com/Linux/2012-01/52192.htm

Linux Shell 通配符、轉義字符、元字符、特殊字符 http://www.linuxidc.com/Linux/2014-10/108111.htm 

Copyright © Linux教程網 All Rights Reserved