shell test命令
test 命令用于检查某个条件是否成立,可以进行数值、字符和文件3方面的测试
数值检测
-eq 等于则为真
-ne 不等于则为真
-gt 大于则为真
-ge 大于等于则为真
-lt 小于则为真
-le 小于等于则为真
#!/bin/bash
num1=100
num2=120
if test $[num1] -eq $[num2]
then
echo '相等'
else
echo '不相等'
fi
字符串测试
= 等于则为真
!= 不等于则为真
-z 字符串长度为0则为真
-n 字符串长度不为0则为真
#!/bin/bash
num1="abc"
num1="bcd"
if test num1=num2
then
echo "相等"
else
echo "不相等"
fi
文件检测
-e文件名 存在则为真
-r文件名 存在且可读为真
-w文件名 存在且可写为真
-x文件名 存在且可执行为真
-s文件名 存在且至少有一个字符为真
-d文件名 存在且为目录为真
-f文件名 存在且为普通文件
-c文件名 存在且为字符型特殊文件为真
-b文件名 存在且为块特殊文件为真
cd /bin
if test -e ./bash
then
echo "文件存在"
else
echo "文件不存在"
fi
与-a 或-o 非!
if test -e ./file1 -a -e ./file2//2个文件同时存在为真