首页 > 学院 > 开发设计 > 正文

shell--计算

2019-11-06 09:22:28
字体:
来源:转载
供稿:网友
exPR expr命令一般用于整数值,但也可用于字符串。# expr 6 + 3       (有空格)9 # expr 2 /* 3      (有转义符号)6注:# expr $a+5          (无空格)3+5bcbc是linux内置中的计算器,能够处理浮点数的计算,看下面的应用例子。[root@node2 ~]# bcbc 1.06.95Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.This is free software with ABSOLUTELY NO WARRANTY.For details type `warranty'.3*5153.5/60scale=43.5/6.5833quit[root@node2 ~]#浮点运算是由一个内建的成为scale的变量控制的,默认是0。可以从上面的例子看出,当不声明scale时,3.5/6的输出是0,当声明scale=4时,3.5/6的输出时0.5833bc在脚本中的运用当在脚本中要处理浮点数计算时,就可以使用bc计算器,先看下面的例子[root@node2 tmp]# cat bc.sh#!/bin/bash#num1=`echo "scale=3; 4.3/7" | bc`echo $num1[root@node2 tmp]# ./bc.sh.614当碰到较短的运算时,就可以使用这种方法variable=`echo "options; expression" | bc`但是如果你计算较为复杂的话,在同一个命令中一次性列出多个表达式会比较麻烦。这时,就可以bc命令的输入重定向了。使用内联输入重定向:variable=`bc << EOFoptionsstatementsexpressionsEOF`先看看下面的例子[root@node2 tmp]# cat bc.sh#!/bin/bash#num1=14.5num2=5num3=32.4num4=`bc << EOFscale=4a=($num1 / $num2)b=($num3 / $num2)a + bEOF`echo $num4[root@node2 tmp]# ./bc.sh9.3800要注意的是在bash计算器中创建的变量a和b在shell脚本中是不能使用的。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表