zoukankan      html  css  js  c++  java
  • Shell算数运算

    使用bc

    1)例1

    #!/bin/bash
    
    var1=10.46
    var2=43.67
    var3=33.2
    var4=71
    
    var5=$(bc << EOF
    scale = 4
    a1 = ( $var1 * $var2)
    b1 = ($var3 * $var4)
    a1 + b1
    EOF
    )
    
    echo The final answer for this mess is $var5
    

    2)例2

    $ cat test11
    #!/bin/bash
    var1=20
    var2=3.14159
    var3=$(echo "scale=4; $var1 * $var1" | bc)
    var4=$(echo "scale=4; $var3 * $var2" | bc)
    echo The final result is $var4
    

      

    使用expr

    expr命令操作符
    操作符 描述
    ARG1 | ARG2 如果ARG1既不是null也不是零值,返回ARG1;否则返回ARG2
    ARG1 & ARG2 如果没有参数是null或零值,返回ARG1;否则返回0
    ARG1 < ARG2 如果ARG1小于ARG2,返回1;否则返回0
    ARG1 <= ARG2 如果ARG1小于或等于ARG2,返回1;否则返回0
    ARG1 = ARG2 如果ARG1等于ARG2,返回1;否则返回0
    ARG1 != ARG2 如果ARG1不等于ARG2,返回1;否则返回0
    ARG1 >= ARG2 如果ARG1大于或等于ARG2,返回1;否则返回0
    ARG1 > ARG2 如果ARG1大于ARG2,返回1;否则返回0
    ARG1 + ARG2 返回ARG1ARG2的算术运算和
    ARG1 - ARG2 返回ARG1ARG2的算术运算差
    ARG1 * ARG2 返回ARG1ARG2的算术乘积
    ARG1 / ARG2 返回ARG1ARG2除的算术商
    ARG1 % ARG2 返回ARG1ARG2除的算术余数
    STRING : REGEXP 如果REGEXP匹配到了STRING中的某个模式,返回该模式匹配
    match STRING REGEXP 如果REGEXP匹配到了STRING中的某个模式,返回该模式匹配
    substr STRING POS LENGTH 返回起始位置为POS(从1开始计数)、长度为LENGTH个字符的子字符串
    index STRING CHARS 返回在STRING中找到CHARS字符串的位置;否则,返回0
    length STRING 返回字符串STRING的数值长度
    + TOKEN TOKEN解释成字符串,即使是个关键字
    (EXPRESSION) 返回EXPRESSION的值

    1)例1

    #!/bin/bash
    # An example of using the expr command
    var1=10
    var2=20
    var3=$(expr $var2 / $var1) //使用expr
    echo The result is $var3
    

      

  • 相关阅读:
    在asp.net实现文件下载
    Insus IO Utility
    Marquee无间隙滚动(二)
    Refactoring Parameter
    How do I filtered TextBox with a Decimal (double) Data Type
    创建自己的类库
    把选中Gridview的记录显示出来
    如何取得当前网页名称
    一位老程序员十年的职场感悟
    java 跳转语句
  • 原文地址:https://www.cnblogs.com/ranwuer/p/8338350.html
Copyright © 2011-2022 走看看