码迷,mamicode.com
首页 > 系统相关 > 详细

shell-条件测试

时间:2020-05-23 00:05:35      阅读:72      评论:0      收藏:0      [点我收藏+]

标签:uid   应该   不为   number   阅读   info   通过   文件操作   括号   

基本语法

为了判断shell程序的某种或几种条件是否成立,shell提供了一组测试运算符。通过返回值判断真假
条件测试的语法有两种:test 和[(为了方便阅读使用[])

  test expression
  [ expresssion ]   #条件和左右括号之间必须带空格

字符串测试

字符串测试运算符

运算符 说明
string 判断指定的字符串是否为空
string1=string2 判断两个字符串是否相等
string1!=string2 判断两个字符串是否不等
-n string 判断string是否是非空字符串
-z string 判断string是否是空字符串
  #!/bin/bash  
  x="abc"
          test $x     #x不为空,所以返回值应该是0
          echo $?
  y="def"
          [ "$x" = "$y" ]  #判断两个相等,而x,y两个字符串不相等,输出应该是错误的
          echo $?
          test "$X" != "$y" #判断两个不相等,输出应该是对的
          echo $?

结果如下
技术图片

整数测试

常见整数运算符

运算符 说明
number1 -eq number2 比较两个是否相等,如果相等正确输出
number1 -ne number2 两个是否不等,不等则正确输出
number1 -gt number2 number1是否大于number2,是则正确输出
number1 -lt number2 number1是否小于number2,是则正确输出
number1 -ge number2 是否大于等于.......
number1 -le number2 是否小于等于.......

这个很简单
技术图片

文件测试

常见文件操作符

操作符 说明
-a 判断文件是否存在。 存在输出0
-b 文件是否存在且为块文件。
-c 文件是否存在且为字符文件
-d 文件是否存在且为目录
-e 与-a相同
-s 文件非空
-f 文件存在且是常规文件
-w 文件存在且可写
-L 文件存在且为符号链接
-u 文件是否有suid位
-r 文件存在且可读
-x 文件存在且可执行

shell-条件测试

标签:uid   应该   不为   number   阅读   info   通过   文件操作   括号   

原文地址:https://www.cnblogs.com/hxlinux/p/12934742.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!