在开始之前,先了解一下逻辑判断符号:
&& 与、|| 或、! 非
A && B 必须A,B同时成立,才能通过判断
---> 判断流程:先执行A判断其是否成立,若成立,则继续执行B,判断其是否成立
---> 若不成立,则直接结束,不再执行B
A || B A、B有一个成立,即可通过判断
!A 若A不成立,则通过判断
数和符号,如下:
比较数值:
等于 ---> –eq
不等于 ---> –ne
小于 ---> –lt
大于 ---> –gt
小于等于 ---> –le
大于等于 ---> –ge
一些英文单词:帮助记忆
equal等于、not equal不等于、less than小于、great than大于
less equal 小于等于 great equal大于等于
成都创新互联客户idc服务中心,提供
联通机房服务器托管、成都服务器、成都主机托管、成都双线服务器等业务的一站式服务。通过各地的服务中心,我们向成都用户提供优质廉价的产品以及开放、透明、稳定、高性价比的服务,资深网络工程师在机房提供7*24小时标准级技术保障。
比较字符串:
= 等于、== 等于,同=、!= 不等于、> 大于、<小于、-z字符串为空、-n字符串非空null
if流程控制语句
if语句有三种使用方式:
格式如下:
单分支:
if 条件判断语句
then 执行语句
fi
双分支:
if 条件判断语句
then 执行语句
else 执行语句
fi
多分支:
if 条件判断语句
then 执行语句
else 执行语句
fi
##################################
实战1:if单分支--->应用
源码如下:
[root@linux4 ~]# if [ -d /root ];then //判断root目录是否存在
> echo "ok" //如果存在输入OK
> fi
ok
##################################
实战2:if双分支应用--->pinghost.sh
ping -c 3 -i 0.2 -w 3 192.168.1.1
-c 发送数据包个数
-i 数据包每次发送间隔时间,默认单位:秒(s)
-w 等待时间,超过返回失败
源码如下:
#!/bin/bash
# ping a given host and print the host status
ip=192.168.1.1
ping -c 3 -i 0.2 -w 3 $ip >>/dev/null #-c count -i? -w wait?
if [ $? -eq 0 ];then?
echo "the host $ip is up."?
else
echo "the host $ip is down."?
fi
##################################
实战3:if多分支应用--->判断数值区间 num.sh
源码如下:
#!/bin/bash
read -p "请输入一个成绩: " num
if [ $num -gt 85 -a $num -lt 100 ];then
echo '优秀!'
elif [ $num -gt 70 ];then
echo '良好!'
elif [ $num -gt 60 ];then
echo '合格!'
else
echo '不合格!'
fi
##################################
实战4:if嵌套使用
源码如下:
#!/bin/bash
read -p "请输入这位同学的成绩: " a
if [ $a -lt 10 ];then
echo "恭喜这位同学进入决赛!"
read -p "请输入这位同学性别: " b
if [ $b = "男" ];then
echo "恭喜这位同学进入男子决赛组!"
else
echo "恭喜这位同学进入女子决赛组!"
fi
fi
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
当前标题:shell条件判断-创新互联
文章源于:
http://www.cdkjz.cn/article/gispo.html