bash,shell中处理小数

原创 2004年07月07日 23:00:00

今天想写一个shell脚本,目的是监控load average,当load average高于7.5了,就重启resin。一直怀疑resin2.*的版本在高利用率下会使得java被锁死。因此系统很不稳定,但是尝试升级到resin3又需要改动线上的java代码,因为resin3对于java的要求更严格了。很多代码都不严格。因此暂时的替代办法是半个小时运行监控程序。

    但是写监控程序的时候又碰到问题了,shell处理小数我居然不会。我的脚本是这样的:

#!/bin/sh
A=`uptime|awk -F"," '{print $4}' |awk '{print $3}'`
B=7.50
C=`expr $A /> $B`
if [ $C -eq 1 ]
then
    /usr/local/resin/bin/restart.sh
    echo `date` >> /usr/local/resin/logs/monitor.log
fi

这样写至少可以正确表达我的意思。但是问题是我在写这段代码时想测试判断小数点的加减乘除却怎么也不行。

bash-2.03# expr 8.8 /+ 9.9
expr: non-numeric argument

郁闷,明天再研究研究!不过大小能比较就ok了,其他属于业余作业,呵呵!

 

后续:其实shell根本就无法处理小数,我现在将脚本修改如下,以免误导大家,真的太不好意思了:

#!/bin/sh
A=`uptime|awk -F"," '{print $4}' |awk '{print $3}'`
B=`echo $A |awk '$1>9 { printf($1); }'`
if [ "$B" = "$A" ]
then
      ......
fi

 

Linux shel浮点l除法,精确到指定小数位数

a=12 b=7 1) expr $a / $b   计算出结果为个1 ,只支持整除 2) echo "scale=2;$a/$b" | bc 结果为 1.71 3) awk 'BEGIN...
  • naiveloafer
  • naiveloafer
  • 2013-04-10 16:10:31
  • 13756

bash中的数值运算

第一种,使用((表达式)): a=3 ((b=a+2) echo $b第二种使用let: let "c=$a+4" echo $c 第三种,使用expr表达式: d=`expr 4 + 3' ech...
  • rumswell
  • rumswell
  • 2013-08-03 15:23:43
  • 7634

Linux学习4之shell脚本中的小数运算

1.awk hadoop@Mcnode1:~/cloud/adam/xubo/data/test20160310/test$ cat demical.sh #!/bin/bash echo `a...
  • bob601450868
  • bob601450868
  • 2016-03-15 12:51:59
  • 4683

shell 中对小数进行比较的方法总结

写个调度器需要对小数之间进行大小比较,经查询shell中 可以用 bc 对小数进行运算 example: #echo 5.5+1.1 | bc 6.6 具体情况#man bc 然而对小数进行...
  • liuxiao723846
  • liuxiao723846
  • 2016-11-05 11:55:22
  • 1498

shell中对小数进行比较的方法总结

原文地址:中对小数进行比较的方法总结">shell 中对小数进行比较的方法总结作者:wowo写个调度器需要对小数之间进行大小比较,经查询shell中 可以用 bc 对小数进行运算 example: #...
  • FlywindMouse
  • FlywindMouse
  • 2013-09-13 10:09:11
  • 3516

bash,shell中处理小数

今天想写一个shell脚本,目的是监控load average,当load average高于7.5了,就重启resin。一直怀疑resin2.*的版本在高利用率下会使得java被锁死。因此系统很不稳...
  • marcolu
  • marcolu
  • 2004-07-07 23:00:00
  • 5220

linux下的shell运算(加、减、乘、除)

((i=$j+$k))    等价于 i=`expr $j + $k` ((i=$j-$k))     等价于   i=`expr $j -$k` ((i=$j*$k))     等价于   i=`e...
  • zwx19921215
  • zwx19921215
  • 2014-03-12 16:25:53
  • 106669

shell 小数比较案例

案例一: [was@was-rsync ~]$ vi /backall/ita-scripts/monitor/redis-mem.sh     #!/bin/bash used_memory...
  • wych1981
  • wych1981
  • 2015-03-15 11:25:20
  • 1809

shell的数值计算,小数计算

shell脚本中,可以进行数值计算,如加减乘除,通过expr、let、(())等完成,文章介绍:http://blog.csdn.net/longshenlmj/article/details/141...
  • longshenlmj
  • longshenlmj
  • 2015-07-28 18:25:23
  • 1246

Js保留小数点的4种代码

jvascript 计算保留小数点一两位,有四种不同效果,非常适用于商城类网站。   1、将小数点清零: function returnFloat0(value) {     value = ...
  • vip_linux
  • vip_linux
  • 2014-04-12 22:25:04
  • 512
收藏助手
不良信息举报
您举报文章:bash,shell中处理小数
举报原因:
原因补充:

(最多只允许输入30个字)