标识符:赋值运算符左边的变量的名称,不能以数字开头。
-eq //等于
-ne //不等于
-gt //大于 (greater )
-lt //小于 (less)
-ge //大于等于
-le //小于等于
运算符:= > < == 之类的符号叫做运算符,当然还有在上述基础之上扩展的运算符,比如>=。
Shell 和其他编程语言一样,支持多种运算符,包括:
算数运算符
关系运算符
布尔运算符
字符串运算符
文件测试运算符
实例一:判断两个变量的数值是否相等
[root@bjidc1-jump31 sh]# cat if05-JudgeNum.sh
num1=666
num2=666
if [ ${num1} -eq ${num2} ]; then
echo "${num1} equal ${num2}"
exit 0
else
echo "${num1} not equal ${num2}"
exit 6
fi
[root@bjidc1-jump31 sh]# cat if05-JudgeNum.sh
num1=666
num2=888
if [ ${num1} -eq ${num2} ]; then
echo "${num1} equal ${num2}"
exit 0
else
echo "${num1} not equal ${num2}"
exit 6
fi
输出结果:
[root@bjidc1-jump31 sh]# bash if05-JudgeNum.sh
666 equal 666[root@bjidc1-jump31 sh]# bash if05-JudgeNum.sh
666 not equal 888
实例二:使用>或者<进行数字的比较
[root@bjidc1-jump31 sh]# cat if06-JudgeNum2.sh
num1=666
num2=888
if [[ ${num1} > ${num2} ]] ; then
echo "${num1} > ${num2}"
exit 0
else
echo "${num1} < ${num2}"
exit 6
if
[root@bjidc1-jump31 sh]# cat if06-JudgeNum2.sh
num1=888
num2=666
if [[ ${num1} > ${num2} ]] ; then
echo "${num1} > ${num2}"
exit 0
else
echo "${num1} < ${num2}"
exit 6
fi
[root@bjidc1-jump31 sh]# bash if06-JudgeNum2.sh
666 < 888[root@bjidc1-jump31 sh]# bash if06-JudgeNum2.sh
888 > 666