• shell条件判断


    按照文件类型进行判断
    判断符 说明 备注
    -b 判断文件是否存在,且是否为块设备文件
    -c 判断文件是否存在,且是否为字符设备块文件
    -d 判断文件是否存在,且是否为目录文件
    -e 判断文件是否存在,存在为真
    -f 判断文件是否存在,且是否为普通文件
    -L 判断文件是否存在,且是否为软连接文件
    -p 判断文件是否存在,且是否为管道文件
    -s 判断文件是否存在,且是否为非空
    -S 判断文件是否存在,且是否为套接字文件

    按照文件类型进行判断
    -r 判断文件是否存在,且有 r 权限
    -w 判断文件是否存在,且有 w 权限
    -x 判断文件是否存在,且有 x 权限
    -u 判断文件是否存在,且有 SUID 权限
    -g 判断文件是否存在,且有 SGID 权限
    -k 判断文件是否存在,且有 SBIT 权限

    两个文件之间进行比较
    a -nt b 判断 a 文件的修改是否比 b 文件新
    a -ot b 判断 a 文件的修改是否比 b 文件旧
    a -ef b 判断 a 文件和 b 文件的 Inode 号是否一样

    字符串的判断
    -z 判断字符串(变量)是否为空
    -n 判断字符串(变量)是否为非空
    a == b 判断字符串 a 和 b 是否相等
    a != b 判断字符串 a 和 b 是否不相等相等,[ "$a" = "$b" ]
    a < b 符号两侧空格可有可无,[[ "$a" < "$b" ]]
    a<=b 符号两侧不能有空格,[[ "$a"<="$b" ]]
    a =~ b 符号两侧必须有空格,[[ "$a" =~ "$b" ]],a 包含于 b

    两个整数之间进行比较
    [ a -eq b ] a=b
    [ a -ne b ] a!=b
    [ a -gt b ] a>b
    [ a -lt b ] a<b
    [ a -ge b ] a>=b
    [ a -le b ] a<=b

    多重条件判断
    判断 1 -a 判断 2 逻辑与,判断 1 和判断 2,都成立为真
    判断 1 -o 判断 2 逻辑或,判断 1 和判断 2,有一个成立为真
    ! 判断 逻辑非,取反原判断式, [ ! 2 -eq 3 ]


    作者:Outsrkem
    出处:https://www.cnblogs.com/outsrkem/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    修改element ui默认样式
    MyUI是美亚柏科旗下新德汇出品的Web前端一站式项目工程框架。
    细谈 axios和ajax区别
    Window MySQL远程连接不上的解决
    为什么要前后端分离?各有什么优缺点?
    原生js
    node.js安装及环境配置之Windows篇
    IDEA 导入若依管理系统
     Java图形验证码,支持gif、中文、算术等类型,可用于Java Web、JavaSE等项目。
    获取git仓库时更新类型update type 的选择
  • 原文地址:https://www.cnblogs.com/outsrkem/p/11190675.html
Copyright © 2020-2023  润新知