let 、[ ]、(())以及可以处理浮点数的bc
let命令:变量前不加上“$”字符,像C语言 中两个init型变量之间相加
#!/bin/bash
NUM=10
let NUM++
echo ${NUM}
NUM1=20
let NUM2=NUM+NUM1
echo ${NUM2}
输出
11和30
- [ ]:命令与let命令相似,比如 [NUM1+NUM2]或者 [ NUM1+ NUM2 ]
#!/bin/bash
NUM1=10
NUM2=20
echo $[ $NUM1+$NUM2 ]
echo $[ NUM1+NUM2 ]
输出都为30
(()):与[ ]操作一样,只是在最外边要加上”$”
#!/bin/bash
NUM1=10
echo $(($NUM1+10))
echo $((NUM1+20))
输出 20和30
expr命令使用
#!/bin/bash
NUM1=10
NUM=`expr 3 + 4`
echo $NUM
NUM2=$(expr $NUM1 + 20)
echo $NUM2
输出7和30,
#使用expr两个操作数与“+”之间要有空格,不然会得到其他结果
bc命令:可以计算浮点数已经进制之间的转换
通常与echo一起使用在通过管道”|”连接bc
#!/bin/bash
NUM=10
echo "3.01 + 4" | bc
echo "obase=2;$NUM" | bc
NUM1=1010
echo "obase=10;ibase=10;$NUM1" | bc
NUM2=20
result=`echo "obase=8;ibase=2;$NUM2" | bc`
echo $NUM2
echo "sqrt(100)" | bc