在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1.简单方法 复制代码 代码如下: $ b=$((5*5+5-3/2)) $ echo $b 29 在linux shell中,我们可以使用 $(()) 将表达式放在括号中,即可达到运算的功能。 2.其它方法: 用:expr 实现运算 复制代码 代码如下: $ expr 5 - 4 1 注意:将需要运算的表达式写入在expr 后面即可,保证 参数与运算符号中间有空格隔开。
3.浮点运算 复制代码 代码如下: $ expr 5.0 - 4 expr: non-integer argument $ echo $((5.0-4)) -bash: 5.0-4: syntax error in expression (error token is ".0-4") 从上面运算结果,看来上面表达式,不足以支持浮点运算了 。 查阅资料才发现:bash 不支持浮点运算,如果需要进行浮点运算,需要借助bc,awk 处理。 方法一: 复制代码 代码如下: [chengmo@centos5 ~]$ c=$(echo "5.01-4*2.0"|bc) [chengmo@centos5 ~]$ echo $c -2.99 方法二: 复制代码 代码如下: [chengmo@centos5 ~]$ c=$(awk 'BEGIN{print 7.01*5-4.01 }') [chengmo@centos5 ~]$ echo $c 31.04 注:在shell 中$() 与 ``等效。 中间包含命令语句执行,返回执行结果。 |
请发表评论