zoukankan      html  css  js  c++  java
  • 【Linux_Shell 脚本编程学习笔记一、条件表达式】

    条件表达式返回的结果都为布尔型

      真为1,假为0

    条件测试的表达式

      [expression]

    比较符

      整数比较

      -eq:比较两个整数是否相等,$A -eq $B

      -ne:测试两个整数是否不等,不等则为真,等则为假

      -gt:大于为真,小于为假

      -lt:小于为真,大于为假

      -ge:大于或者等于

      -le:小于或者等于

      

      -e  File  测试文件是否存在

      -f  File  测试文件是否是普通文件

      -d  File 测试指定路径是否是目录

      -r  File 测试文件是否有写的权限

      -w  File 测试文件是否有写的权限

      -x  File测试文件是否有执行的权限

      -z:判断指定的变量是否存在值

      -n:测试字符是否为空 非空为真(0)

      -s:文件的大小非0时为真

      !:逻辑非

     双目:

      == 相等为真

      != 不等为真

      >  大于为真

      <  小于为真

      -a:逻辑与   都为真才为真

      -o:逻辑或  一个为真就为真

    test expression  

      expression为条件表达式

      if test  (表达式为真) 
      if test !表达式为假 
      test 表达式1 –a 表达式2                  两个表达式都为真 
      test 表达式1 –o 表达式2                 两个表达式有一个为真 

    摩根定律

      !(A  -a  B)= !A  -o  !B

      !(A  -o  B)= !A  -a  !B

    逻辑符

     &&:逻辑与,都为真则为真 

      如果第一个条件是真的,需要对第二个条件进行判断

      如果第一个条件是假的,不需要对第二个条件进行判断,结果已经确定为假。

     ||:逻辑或,一个为真则为真 

      当第一个条件为真的时候,不在去判断第二条件,因为第一个表达式已经决定了整个表达式为真

      只有当第一个表达式为假的时候才回去判断第二个表达式

    操作实例:

      创建两个文件,一个是普通文件类型,另一个是文件目录

         

      执行条件表达式   

         

      定义一个变量,将文件赋值给变量,然后通过条件表达式判断该文件是否存在 (补充: 使用变量的时候最好是加上双引号 " ")

        

      

      编辑脚本

        

      如果执行shell脚本时,后面跟着的参数的值  为 3  才能输出3个1,其他则不输出

        

      在修改脚本,将&& 连接符号改成 ||  

            

      执行脚本    当只有前面的条件不成立,后面的条件才执行

       

       下面图中的语句  [ -f /etc/host ] && { echo 1; echo 2; echo3 ;}         

          

      与之相等价的语句是

        if  [ 条件 ]

        then  

          执行的命令

          命令

        fi

        这条语句就是条件不成立时候执行的   [ -d /etc/hosts ] || { echo 1;echo 2;echo 3;}

          

        

  • 相关阅读:
    通讯录封装实现
    简单通讯录的实现 main..h .m文件全部
    iOS 开发 OC编程 字典和集合 排序方法
    iOS 开发 OC编程 数组冒泡排序.图书管理
    iOS 开发 OC编程 属性和字符串练习
    iOS 开发 OC编程 属性和字符串
    iOS 开发 OC编程 便利构造器以及初始化方法
    iOS 开发 OC编程 方法的书写
    IOS 开发 OC编程 类和对象
    iOS 开发 c语言阶段考试题
  • 原文地址:https://www.cnblogs.com/kangxinxin/p/11142138.html
Copyright © 2011-2022 走看看