【Linux】shell数学运算

在Bash shell环境中,可以利用let、(())和[]执行基本的算术操作。而在进行高级操作时,expr和bc这两个工具就特别有用

let的使用

Script01.sh

#!/bin/bash
#Author:oliver
#Date  :2018-10-7
#测试let命令
num1=10;
num2=20;

let Result1=num1+num2
echo "num1与num2的和为:"${Result1}

#自加操作
let num1++
echo "num1自加的值为:"${num1}

#自减操作
let num2--
echo "num2自减的值为:"${num2}

#简写形式
let num1+=2
echo "num1自加后与2的和为:"${num1}

let num2-=2
echo "num2自减后与2的差为:"${num2}

从上述代码可以看出:

1.简单求和

let Result=num1+num2

2.自加操作

let num1++

3.自减操作

let num1--

4.简写形式

let num1+=2 等同于let num1=num1+2

let num1-=2  等同于let num1=num1-2

 

操作符[]

#!/bin/bash
num1=1;
num2=2;

Result=$[ num1+num2 ]
echo "$Result"
操作符[]的使用

Result=$[ num1+num2 ]

也可以在[]中使用$

Result=$[ $num1+$num2 ]

 

操作符(())

使用操作符(()),变量名前需要加上$

Result=$((num1+20))


 

expr

例一:

#!/bin/bash
num1=1;
num2=2;

Result=`expr 3 + 4`
echo "$Result"

 

例二:

#!/bin/bash
num1=1;
num2=2;

Result=$(expr $num1 + 10)
echo "$Result"

注意:上述数字与符号之间是存在间隔的。


声明:以上操作符只能用于计算整数,不支持浮点型运算

若要进行浮点型数字运算,使用bc命令即可

posted @ 2018-10-07 11:03  OLIVER_QIN  阅读(245)  评论(0编辑  收藏  举报