zoukankan      html  css  js  c++  java
  • 运算符

    算数运算符

    1. 基本语法

    • $((运算式))
    • $[运算式]
    • expr 运算符  # 注意:expr运算符间要有空格

    2. 常用运算符

    假定变量 a 为 10,变量 b 为 20:

    运算符说明举例
    + 加法 expr $a + $b 结果为30
    -  
    *  
    / 除法  
    % 取余  
    = 赋值  
    == 相等,用于比较两个数,相同则返回true [$a==$b] 返回true
    != 不相等,用于比较两个数,不相同则返回true [$a!=$b] 返回true

    3. 案例实操

    [root@slave2 ~]# $((2+3))
    -bash: 5: command not found
    [root@slave2 ~]# $((2 + 3))
    -bash: 5: command not found
    [root@slave2 ~]# $[2+4]
    -bash: 6: command not found
    [root@slave2 ~]# $[2 + 4]
    -bash: 6: command not found
    [root@slave2 ~]# expr 3 + 4
    7
    [root@slave2 ~]# `expr 3 + 4` 
    -bash: 7: command not found
    [root@slave2 ~]# R=`expr 3 + 4`
    [root@slave2 ~]# echo $R
    7
    [root@slave2 ~]# R=expr 3 + 4 
    -bash: 3: command not found
    [root@slave2 ~]# R=$[4+9]
    [root@slave2 ~]# echo $R 
    13
    [root@slave2 ~]# R=$[9 + 9] 
    [root@slave2 ~]# echo $R   
    18
    [root@slave2 ~]# R=$((4+9))
    [root@slave2 ~]# echo $R   
    13
    [root@slave2 ~]# R=$((8 + 9)) 
    [root@slave2 ~]# echo $R     
    17
    
    [root@slave2 testshell]# vim ArithmeticOperation.sh 
    #!/bin/bash
    
    a=10
    b=20
    
    val=`expr $a + $b`
    echo "a + b : $val"
    
    val=`expr $a - $b`
    echo "a - b : $val"
    
    val=`expr $a * $b`
    echo "a * b : $val"
    
    val=`expr $b / $a`
    echo "b / a : $val"
    
    val=`expr $b % $a`
    echo "b % a : $val"
    
    if [ $a == $b ]
    then
       echo "a 相等 b"
    fi
    if [ $a != $b ]
    then
       echo "a 不相等 b"
    fi
    ~    
    [root@slave2 testshell]# ./ArithmeticOperation.sh   
    a + b : 30
    a - b : -10
    a * b : 200
    b / a : 2
    b % a : 0
    a 不相等 b

    4. 注意

    • 表达式和运算符之间要有空格,例如 2+2 是不对的,必须写成 2 + 2,这与我们熟悉的大多数编程语言不一样
    • 完整的表达式要被` `包含,注意这个字符不是常用的单引号,在 Esc 键下边。
  • 相关阅读:
    【selenium学习高级篇 -31】Jenkins中Project的相关配置
    【selenium学习高级篇 -30】Jenkins新建一个Project
    【selenium学习高级篇 -29】Jenkins的简单介绍和安装
    【selenium学习中级篇 -28】封装一个日志类
    【selenium学习中级篇 -27】Python读取配置文件
    JVM类加载机制
    Java虚拟机JVM及垃圾回收机制
    数组在内存中的分配
    wait 和 sleep 的区别
    Cloneable 接口实现原理
  • 原文地址:https://www.cnblogs.com/zxbdboke/p/10416049.html
Copyright © 2011-2022 走看看