shell脚本之 operater.sh 算术运算符;比较运算符;布尔运算符;逻辑与或非运算符;字符串运算符的使用

1.注意 格式不能变

尤其是变量和变量表达式之间的空格:[ 空格] 、[ $a == $b ] 中间的空格严格不能变;否则报错

关系运算符

关系运算符只支持数字,不支持字符串,除非字符串的值是数字。

下表列出了常用的关系运算符,假定变量 a 为 10,变量 b 为 20:

 

#!/bin/bash
#算术运算符的操作
a=100 b=200
echo "a+b=`expr $a + $b`"#注意必须$a 和 $b 中间的加号要有空格
echo "a*b=`expr $a \* $b`"
echo "a-b=`expr $a - $b`"
echo "a/b=`expr $a / $b`"
#注意[]里面的变量必须带空格隔开 否则报错 then 也必须隔回车换行
#比较数字是否相等
if [ $a != $b ]
then
echo "a不等于b"
else
echo "a等于b"
fi
c=100
if [ $c == $a ]
then
echo "c等于a"
fi
#组装一个打印信息的函数
tips(){
i=0 n=$1 temp=""
name=$2
while(( $i <= $n ))
do
temp="-${temp}"
if [ $i == 10 ]
then
temp="${temp}${name}${temp}"
fi
let "i++"
done
echo $temp
}
tips 20 "数字比较关系运算符使用"#使用函数
#注意空格否则错误;条件表达式里面[ 变量必须空格 ]
a=100 b=200
echo "a=$a b=$b"
if [ $a -eq $b ]
then
echo "a eq b"
elif [ $a -ne $b ]
then
echo "a 不等于 b"
elif [ $a -gl $b ]
then
echo "a 大等b "
fi
if [ $a -lt $b ]
then
echo "a 小于等于 b"
fi

tips 30 "布尔运算符和逻辑运算 的使用"
if [[ $a != $b && $a == 100 ]]
then
echo "a不等于b 但是a=100"
fi
if [[ $a != $b || $a != 200 ]]
then
echo "a不等于b 或者a不等于200"
fi

 

posted @ 2018-03-29 18:32  王默默  阅读(408)  评论(0编辑  收藏  举报