数学计算
在bash环境中,可以利用let、(())和[]执行基本的算术运行,而在高级操作中,expr和bc也非常有用
expr数学计算
expr使用具体查看expr --help
[root@876234e3-fcd6-554c-8 ~]# expr match "how3 old are you\!" '[a-z][a-z][a-z][0-9]'
4
[root@876234e3-fcd6-554c-8 ~]# expr match "how old are you\!" '[a-z][a-z][a-z][0-9]'
0
[root@876234e3-fcd6-554c-8 ~]# expr 3 + 5
8
[root@876234e3-fcd6-554c-8 ~]# expr length "how are you"
11
使用(())、[]数学计算
[root@876234e3-fcd6-554c-8 ~]# echo $[2+3]
5
[root@876234e3-fcd6-554c-8 ~]# echo $((2+3))
5
[root@876234e3-fcd6-554c-8 ~]# bb=5
[root@876234e3-fcd6-554c-8 ~]# echo $((2+bb))
7
[root@876234e3-fcd6-554c-8 ~]# echo $[3+bb]
8
let数学计算
[root@876234e3-fcd6-554c-8 ~]# let nu3=9-8
[root@876234e3-fcd6-554c-8 ~]# nu4=9/8
[root@876234e3-fcd6-554c-8 ~]# let nu5=9/8
[root@876234e3-fcd6-554c-8 ~]# echo "nu3 is $nu3"
nu3 is 1
[root@876234e3-fcd6-554c-8 ~]# echo "nu4 is $nu4"
nu4 is 9/8
[root@876234e3-fcd6-554c-8 ~]# echo "nu5 is $nu5"
nu5 is 1
bc数学计算
有些系统里没有bc命令,还得自己手动安装
yum -y install bc
echo “4*0.33” |bc #bc可以进行浮点运算
echo “scale=2; 3/7” |bc #bc可以设置浮点数的位数
变量的使用
错误用法:
[root@server port]# let num=58
[root@server port]# sed -n '6, $[num1]p' filename >122.txt
sed:-e 表达式 #1,字符 5:未知的命令:“[”
[root@server port]# sed -n '6, $((num1))p' filename >122.txt
sed:-e 表达式 #1,字符 5:未知的命令:“(”
正确用法:
[root@server port]# let num=58
[root@server port]# sed -n "6, $((num1))p" filename >222.txt
[root@server port]# sed -n "6, $[num1]p" filename >222.txt
快找找上面两种方法中不一样的地方吧,找到以后你就会记住了