if/else命令
1 单分支if条件语句
if [ 条件判断式 ] ; then
程序
fi
注意
1.if语句使用fi结尾,和一般语言使用大括号结尾不同。
2.[ 条件判断式 ] 就是使用test命令判断,所以中括号和条件判断式之间必须有空格
3.then后面跟符号条件之后执行的程序,可以放在[]之后,用“;”分割,也可以换行写入,就不需要";"了。
eg:#!/bin/sh
if [ -x /etc/rc.d/init.d/httpd ]
then
/etc/rc.d/init.d/httpd restart
fi
2,多分支if条件语句
if [ 条件判断式1 ]
then
当条件判断式1成立时,执行程序1
elif [ 条件判断式2 ]
then
当条件判断式2成立时,执行程序2
…省略更多条件
else
当所有条件都不成立时,最后执行此程序
fi
示例:
read -p "please input your name: " NAME
eg:
#!/bin/bash
read -p “please input your name:” NAME
#echo
N
A
M
E
i
f
[
“
NAME if [ “
NAMEif[“NAME” == root ]
then
echo “hello ${NAME}, welcome !”
elif [ $NAME == tom ]
then
echo “hello ${NAME}, welcome !”
else
echo “SB, get out here !”
fi
case命令
case命令是一个多分支的if/else命令,case变量的值用来匹配value1,value2,value3等等。匹配到后则执行跟在后面的命令直到遇到双分号为止(;;)case命令以esac作为终止符。
格式
CMD=$1
case $CMD in
start)
echo “starting”
;;
Stop)
echo “stoping”
;;
*)
echo "Usage: {start|stop} “
esac