您的位置:首页 > 运维架构 > Linux

linux的if判断表达式大全

2015-04-28 13:52 225 查看
关于文件属性的判断式:

      -a 如果文件存在

      -b 如果文件存在,且该文件是区域设备文件

      -c 当file存在并且是字符设备文件时返回真

      -d 当pathname存在并且是一个目录时返回真

      -e 当pathname指定的文件或目录存在时返回真

      -f 当file存在并且是普通文件时返回真

      -g 当由pathname指定的文件或目录存在并且设置了SGID位时返回为真

      -h 当file存在并且是符号链接文件时返回真,该选项在一些老系统上无效

      -k 当由pathname指定的文件或目录存在并且设置了“sticky”位时返回真

      -r 当由pathname指定的文件或目录存在并且可读时返回为真

      -s 当file存在文件大小大于0时返回真

      -t 文件描述符 如果文件描述符是开启的,且链接了某一个终端

      -u 当由pathname指定的文件或目录存在并且设置了SUID位时返回真

      -w 当由pathname指定的文件或目录存在并且可执行时返回真。一个目录为了它的内容被访问必然是可执行的。

      -x 如果文件存在,且该文件有可执行的属性

      -O 当由pathname指定的文件或目录存在并且被子当前进程的有效用户ID所指定的用户拥有时返回真。

      -G 如果文件存在,且该文件为有效的群组 id 所拥有

      -L 如果该文件存在,且该文件是符号链接文件

      -S 如果该文件存在,且该文件是Socket文件

      -N 如果该文件存在,且该文件自上次读取后曾修改过

   文件1 –nt 文件2 如果文件1比文件2新,或者文件1存在,文件2不存在

   文件1 –ot 文件2 如果文件1比文件2旧,或者文件1不存在,文件2存在

   文件1 –ef 文件2 如果文件1和文件2 引用到相同的设备和 inode 编号

  关于字符串的条件判断式

      -z 空串 (如果字符串长度为0)

      -n 非空串 (如果字符串长度不为0)

   字符串 如果字符串长度不为0

      != 如果两个字符串不相等

      = 如果两个字符串相等

      == 如果两个字符串相等

   字符串1 < 字符串2 如果字符串1小于字符串2

   字符串1 > 字符串2 如果字符串1大于字符串2

  关于算式的条件判断

      -eq 等于

      -ne 不等于

      -gt 大于

      -lt 小于

      -le 小于等于

      -ge 大于等于

  关于 Bash 选项的条件判断

      -o set的选项名称 如果选项是开启的状态
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: