zoukankan      html  css  js  c++  java
  • shell 变量的数值计算实践 expr

    expr(evaluate(求值)expressions(表达式))命令既可以用于整数运算,也可以用于相关字符串长度、匹配等的运算处理

    expr 用做计算

    必须有一个空格才会计算

    [root@salt-minion-192 sh1]# expr 1 + 1
    2
    [root@salt-minion-192 sh1]# expr 1 +   1
    2

    没有空格不计算

    [root@salt-minion-192 sh1]# expr 1+1
    1+1

    有变量的计算

    [root@salt-minion-192 sh1]# i=8
    [root@salt-minion-192 sh1]# expr $i + 1
    9

    expr在Shell中可配合变量进行计算,但需要用反引号将计算表达式括起来。

    [root@salt-minion-192 sh1]# i=5
    [root@salt-minion-192 sh1]# e=`expr $i + 2`
    [root@salt-minion-192 sh1]# echo $e
    7

    通过expr判断变量或字符串是否为整数

    [root@salt-minion-192 sh1]# i=5
    
    [root@salt-minion-192 sh1]# expr $i + 6 &>/dev/null  #<==把i和整数相加,&>/dev/null
                                                     表示不保留任何输出。
    [root@salt-minion-192 sh1]# echo $?  #<==输出返回值。
    0
    [root@salt-minion-192 sh1]# i=mike
    [root@salt-minion-192 sh1]# expr $i + 6 &>/dev/null  <==同样把i和整数相加,不保留任何输出。
    [root@salt-minion-192 sh1]# echo $?
    2  #<==返回为非0,则证明i的值不是整数,因为赋值的是mike

    结论:利用expr做计算,将一个未知的变量和一个已知的整数相加,看返回值是否为0,

    如果为0就认为做加法的变量为整数,否则就不是整数

    利用expr计算字符串的长度

    [root@salt-minion-192 sh1]# char="mike"
    [root@salt-minion-192 sh1]# expr length "$char"  #<==利用expr的length函数计算字符
                                                      串长度。
    4
  • 相关阅读:
    JSP界面之间如何实现传值
    绝对路径的用法
    每日日报2020.8.12 1905
    每日日报2020.8.8 1905
    每日日报2020.8.17 1905
    每日日报2020.8.15 1905
    每日日报2020.8.13 1905
    每日日报2020.8.10 1905
    每日日报2020.8.16 1905
    每日日报2020.8.9 1905
  • 原文地址:https://www.cnblogs.com/mingerlcm/p/9743167.html
Copyright © 2011-2022 走看看