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