SHELL脚本if语句判断

一、单分支if语句:只在"条件成立"才执行相应的代码操作,否则不做任何操作.
语法:

if 条件测试操作then    命令序列fi

例如:
编写个脚本,测试系统中是否有/media/cdrom这个目录,如果没有则创建.
脚本如下:

# !/bin/bashmulu="/media/cdrom"if [ ! -d $mulu ] ; then   mkdir -p $mulufi

二、多分支if语句:针对单分支条件不成立时,执行另一个操作.
语法

if 条件测试操作then                                      //条件成立执行命令序列1   命令序列1else                                     //条件不成立则执行命令序列2   命令序列2           fi

例:编写一个连通性测试小脚本.根据ping结果显示不同的提示,成功显示chenggong 失败显示shibai.如下:

# !/bin/bashping -c 3 -i 0.2 -W 3 $1 &> /dev/null        //此操作不显示在屏幕上if [ $? -eq 0 ]                             //上面条件成立则运行下面命令then    echo "chenggong"else                                       //不成立则运行下面的命令    echo "shibai"fi

三、多分支if语句:对多个互斥的条件执行不同的操作.
语法:

if 条件测试操作1then   命令序列1elifthen   命令序列2else   命令序列3fi

例:
编写1个成绩小脚本,90-100显示优秀,70-80显示一般,其他不及格.如

# !/bin/bashread -p "请输入你的成绩" chengjiif [ $chengji -ge 90 ] && [ $chengji -le 100 ]then  echo "你的成绩很优秀"elif [ $chengji -ge 70 ] && [ $chengji -lt 90 ]then   echo "你的成绩一般"else   echo"你的成绩不级合格"fi

kill线程

# !/bin/bashcd /data/jarcount=`find . -maxdepth 1 -type f -name duweixin.net.log -mmin +5 | wc -l`if [ "$count" -ne 0 ]then  echo 超过5分钟了,kill线程  varid=`ps -ef | grep duweixin.net-proxy-1.0.jar | grep -v grep | cut -c 9-15`  echo 线程id: $varid  if [ "$varid"== ""]  then     sh /data/jar/duweixin.net.sh  else [ "$varid" -gt 0 ]     kill -9 $varid  echo 启动抓取....  sh /data/jar/duweixin.net.sh  fifiexit

关键字:if, shell

版权声明

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部