zoukankan      html  css  js  c++  java
  • Linux中的判断式

    格式一:test [参数] 判断内容
    格式二:[ [参数] 判断内容 ]
      说明:
        a.格式二可以认为是格式一的缩写
        b.格式二里中括号和内容之间要有空格


    基于文件的判断
    -d  判断文件是否存在,并且是目录文件
    -e  判断文件是否存在
    -f  判断文件是否存在,并且是普通文件
    -l  判断文件是否存在,并且为符号连接文件
    [root@localhost temp]# test -e /etc/passwd
    [root@localhost temp]# echo $?
    0
    [root@localhost temp]# [ -e /etc/passwd ]
    [root@localhost temp]# echo $?
    0
    [root@localhost temp]# [ -d /root ] && echo "yes" || echo "no"
    yes

    基于文件权限的判断
    -r   文件 判断文件是否存在,并且拥有读权限
    -w  文件 判断文件是否存在,并且拥有写权限
    -x   文件 判断文件是否存在,并且拥有执行权限
    [root@localhost temp]# [ -r data.txt ] && echo "yes" || echo "no"
    yes

    两个文件之间的比较
    文件1 -nt 文件2  文件1的修改时间比文件2新
    文件1 -ot 文件2  文件1的修改时间比文件2晚
    文件1 -ef 文件2  文件1和文件2的inode号是否一样
    [root@localhost temp]# ln /xiaol/temp/data.txt /xiaol/temp/lndata.txt
    [root@localhost temp]# [ /xiaol/temp/data.txt -ef /xiaol/temp/lndata.txt ] && echo "yes" || echo "no"
    yes

    两个整数之间的比较
    用的是:-eq -ne -gt -lt -ge -le这些,就不多解释了
    [root@localhost temp]# [ 23 -ge 22 ] && echo "yes" || echo "no"
    yes

    两个字符串之间的比较
    -z 字符串  判断字符串是否为空
    -n 字符串  判断支付传是否为非空
    串1 == 串2  两个字符串相等
    串1 != 串2   两个字符串不相等
    [root@localhost temp]# a=1
    [root@localhost temp]# b=2
    [root@localhost temp]# [ "$a" == "$b" ] && echo "yes" || echo "no"
    no

    [root@localhost temp]# name=xiaol
    [root@localhost temp]# [ -z "$name" ] && echo "yes" || echo "no"
    no

    多个判断一起执行
    判断1 -a 判断2  逻辑与
    判断1 -o 判断2  逻辑或
    ! 判断1       逻辑非

  • 相关阅读:
    什么时候用using (SPSite site = new SPSite(SPContext.Current.Web.Url))
    在picture library中取某一图片的大图、小图
    jetbrain phpstorm 增加或删除一个 live template
    用 monitorix 开启linux图形化监控
    360上传应用|应用宝上传应用
    markdown 自定义一个锚点
    用CKEDITOR 做自助上传的解决方案2
    按键精灵*ff
    按键精灵http.定义getWeb
    markdown 自己搞一个浏览工具
  • 原文地址:https://www.cnblogs.com/413xiaol/p/7191756.html
Copyright © 2011-2022 走看看