zoukankan      html  css  js  c++  java
  • Shell基本语法---常见的条件判断

    语法

      [ 判断表达式 ]

    文件夹或路径是否存在

    • -e 目标是否存在(exist)
    • -d 是否为路径(directory)
    • -f 是否为文件(file)
    [ -e text.sh ] || touch text.sh  #text.sh不存在就创建

    权限是否存在

    • -r 是否有读取权限(read)
    • -w 是否有写入权限(write)
    • -x 是否有执行权限(excute)
    [ -x text.txt ] && echo '有执行权限'   #判断是否有执行权限

    整数比较大小(只能用于整数比较)

    • -eq 等于(equal)

    • -ne 不等于(not equal)

    • -gt 大于(greater than)

    • -lt 小于(lesser than)

    • -ge 大于或者等于(greater or equal)

    • -le 小于或者等于(lesser or equal)

    [ 9 -gt 8 ] && echo '大于'

    浮点型比较大小(借助bc)

    • bc中大小比较,true:1 false:0
    `echo '1.2 < 1.3' | bc`  #利用bc比较大小
    [ `echo '1.2 < 1.3' | bc` -eq 1 ] #然后和1比较。即可得出结果

    字符串比较

    • = 相等

    • == 相等 等同于= 只是在[[]]和在[]中表现不同

    • != 不相等

    [ 'kkkkk' != 'kkkk' ] && echo '不等于'

    多条件判断

    #[[]]只能配合&&或||使用
    [[ "a" = "a" && "b" = "b" ]]
    
    #[]里面只能配合-a或-o使用,外面才能配合&&或||使用
    [ "a" = "a" -a "b" = "b" ]
    
    [ "a" = "a" -o "b" = "b" ]
    
    [ "a" = "a"] && [ "b" = "b" ]
  • 相关阅读:
    Python使用阿里云镜像
    Charles抓取https请求中文乱码的处理方法
    Charles 注册码
    BAT随笔记录(1)
    NodeJS使用puppeteer进行截图
    Centos中文语言乱码解决方法
    CentOS下安装Chrome浏览器中文显示为方框
    CentOS下安装Chrome浏览器
    Jenkines邮件中添加图片
    将HTML转IMAGE
  • 原文地址:https://www.cnblogs.com/chusiyong/p/11272211.html
Copyright © 2011-2022 走看看