微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Shell运算符

Shell运算符

shell认变量是字符串类型,所以变量之间做运算需要符合shell特定的规则

expr 运算式

通过expr可以计算表达式的值,注意运算式数字和符号之间必须要有空格

[root@zookeeper1 shell]# expr 2 + 3
5

# 特殊字符需要转义才能识别
[root@zookeeper1 shell]# expr 2 /* 3
expr: 语法错误
[root@zookeeper1 shell]# expr 2 \* 3
6

# 通过``将exp运算式的值赋给变量
[root@zookeeper1 shell]# result=`expr 2 + 3`
[root@zookeeper1 shell]# echo $result
5
# 通过$()将expr运算式的值赋给变量
[root@zookeeper1 shell]# result=$(expr 2 \* 3)
[root@zookeeper1 shell]# echo $result
6

$((运算式))

通过$((表达式))也可以得到运算式的值,并且特殊字符不用转义,运算式之间也可以不需要空格

[root@zookeeper1 shell]# echo $((2+3))
5
[root@zookeeper1 shell]# result=$((2*3))
[root@zookeeper1 shell]# echo $result 
6

$[运算式]

通过$[运算式]也可以得到运算式的值,并且特殊字符不用转义,运算式之间也可以不需要空格,这种方式也是比较常用的

[root@zookeeper1 shell]# echo $[2+3]
5
[root@zookeeper1 shell]# result=$[2+3]
[root@zookeeper1 shell]# echo $result 
5

一个简单的脚本

新建add.sh脚本,内容如下:

[root@zookeeper1 shell]# cat add.sh 
#!/bin/bash

sum=$[$1+$2]
echo "sum=$sum"

执行脚本

[root@zookeeper1 shell]# ./add.sh 2 3
sum=5

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。