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
    

      

  • 相关阅读:
    循环语句
    JAVA-数据类型、变量、常量
    JAVA——程序流程控制——循环语句——for循环(打印三角形)
    循环语句
    JAVA基础学习1
    新手上路
    mysql内置函数之事务
    mysql内置功能
    mysql内置函数之视图
    pymysql模块
  • 原文地址:https://www.cnblogs.com/ranwuer/p/8338350.html
Copyright © 2011-2022 走看看