资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

if条件语句实战单分支结构-创新互联

单分支结构

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册网站空间、营销软件、网站建设、化州网站维护、网站推广。

语法:

if  [条件]

 then

   指令

fi

if [条件]:then

        指令

fi

if单分支条件中文编程语法:

如果  [你有房]

    那么

        我就嫁给你

果如

提示:分号相当于命令换行,上面两种语法等用。

特殊写法:if [-f "$file1"];then echo 1;if 相当于:[if "$file1"]&& echo 1

if [ -f  "$file1" ] :then

    echo 1

fi

范例1:

#!/bin/bash
#功能:单分支if结构整数比较,用-lt格式例子
if [ 10 -lt 12 ]
then 
echo "yes"
fi

执行结果:
[root@XCN if]# sh test1.sh 
yes
#提示:当比较条件为整数数字时

范例2:使用read及脚本传参方式如果实现上述整数的比较?

解答:

特别强调:read读入和命令行传参是两种输入内容的方法。

1)脚本传参的方式脚本例子

#!/bin/bash
if [ $1 -lt $2 ]: then
  echo "yes,$1 less then $2"
fi

输入结果
[root@XCN if]# sh if2.sh 1 2
yes,1 less then 2

2)单分支if判断两整数大小三种情况的脚本例子(以read读入为例)

#!/bin/bash
read -p "pls input two num:" a b
if [ $a -lt $b ];then
  echo "yes,$a less than $b"
  exit
fi
if [ $a -eq $b ];then
  echo "yes,$a eaual $b"
  exit
fi
if [ $a -gt $b ];then
  echo "yes,$a greater than $b"
  exit
fi


见证奇迹的时刻:
[root@localhost shell]# sh if1.sh 
pls input two num:1 2
yes,1 less than 2

范例3:开发shell脚本实现如果/server/scipts下面存在if3.sh的内容就输出到屏幕

注意:如果执行脚本后发现该if3.sh不存在,就自动创建这个if3.sh脚本

#!/bin/bash
path=/server/scripts
file=if3.sh
#no1
if [ ! -d $path ]
then
  mkdir -p $path
  echo "$path is not exist,already created it."
fi
#no2
if [ ! -f $path/$file ]
then
  touch $path/$file
  echo "$file is not exist,alreadt created it."
  exit
fi
#no3
echo "ls -l $path/$file"
ls -l $path/$file                                                                         
~                                                                           
执行输出:
                                                                                           
[root@localhost ~]# sh if.sh 
/server/scripts is not exist,already created it.
if3.sh is not exist,alreadt created it.

范例4:开发脚本判断系统剩余内存大小,如果低于100M就邮件报警。

测试报警成功后加入系统定时任务每3分钟执行一次检查。

思路:

  1. 如果去内容,去内存那个选项。

[root@ailuoli ~]# free -m|grep buffers/ |awk ' {print $NF}'
1781

 2.发邮件mail,mutt。sendmail服务器要开启

[root@ailuoli ~]# yum install sendmail
[root@ailuoli ~]# /etc/init.d/sendmail start
Starting sendmail: [  OK  ]
Starting sm-client: [  OK  ]

[root@ailuoli ~]#echo "xcn"|mail -s "title" 995345781@qq.com

3.编写脚本

#!/bin/bash
userd_mem=`free -m|grep buffers/ |awk ' {print $NF}'`
if [ $userd_mem -lt 100 ]
then
  echo "menm is not enough,$userd_men."|mail -s "mem warning $(date +%F)" 995345781@qq.com
fi

if条件语句实战单分支结构

三分钟监测一次:

*/3 * * * * /bin/bash /mem.sh

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享文章:if条件语句实战单分支结构-创新互联
转载注明:http://cdkjz.cn/article/cseiee.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220