Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试
1.数值测试
参数 | 说明 |
---|---|
-eq | 等于则为真 |
-ne | 不等于则为真 |
-gt | 大于则为真 |
ge | 大于等于则为真 |
-lt | 小于则为真 |
-le | 小于等于则为真 |
实例测试
num1=100
num2=100
if test $[num1] -eq $[num2];
then
echo "两个数相等!"
else
echo "两个数不相等!"
fi
输出结果:
两个数相等!
2.代码中的 [] 执行基本的算数运算
a=5
b=6
result=$[a+b]
echo "result : $result"
3.字符串测试
str1="lky"
str2="wqq"
if test $str1 = $str2;
then
echo "两个字符串相等!"
else
echo "两个字符串不相等!"
4.文件测试
filePath="/Users/kerain/Desktop/test.txt"
if test -e $filePath;
then
echo "文件已存在!"
else
echo "文件不存在!"
fi
5.逻辑关系
Shell还提供了与( -a )、或( -o )、非( ! )三个逻辑操作符用于将测试条件连接起来,其优先级为:"!"最高,"-a"次之,"-o"最低
if test -e $filePath -o -e $filePath2;
then
echo "至少有一个文件存在!"
else
echo "两个文件都不存在"
fi