Shell基础学习(五) test命令

1、数值测试

参数   说明
-eq   等于则为真
-gt   大于则为真
-lt 小于则为真
-nq 不等于则为真
-ge 大于等于为真
-le 小于等于为真

  示例:

num1=100
num2=100
if test $[num1] eq $[num2]
then
      echo '二个数相等'
else 
      echo '二个数不相等'
fi

输出:二个数相等

2、字符串测试

参数   说明
= 等于则为真
!= 不等于为真
-z 字符串长度为零为真
-n 字符串长度不为零位真

  示例:

string1='liupf'
string2='liupf'
if test string1=string2
then
    echo '二个字符串相等'
else
    echo '二个字符串不相等'
fi
输出:二个字符串相等
 

3、文件测试

参数 说明
-e 文件名 文件存在为真
-w 文件名 文件存在且可写为真
-r 文件名 文件存在且可读为真
-x 文件名          文件存在且可执行为真
-s 文件名 文件存在且至少有一个字符串
-d 文件名 为一个目录为真
-f 文件名 为一个普通文件为真
-c 文件名 如果文件存在且为字符型特殊文件则为真
-b 文件名 如果文件存在且为块特殊文件则为真

  示例:

  

cd /bin
if test -e ./bash
then
    echo '文件已存在!'
else
    echo '文件不存在!'
fi
输出:文件已存在
原文地址:https://www.cnblogs.com/huixuexidezhu/p/5541917.html