基本语法结构
if结构
简介
只要正确,就要一直向前冲。
添加一个条件判断,如果条件判断为真(True)则执行后续命令;条件判断为假(False)则直接结束。
格式
#写法一:
if [ 判断条件 ]; then
commands
fi
#写法二:
if [[ 判断条件 []; then
commands
fi
#写法三:
if test 判断条件; then
commands
fi
#类似于
[ 判断条件 ] && commands
流程图
举例
read -p "请输入名字:" NAME
if [ "$NAME" == "wangmingqu" ]; then
echo "您输入的名字为:$NAME"
echo "欢迎光临"
fi
if…else结构
简介
分叉路口,二选一。
添加一个条件判断,如果条件判断为真(True)则执行命令1;如果条件判断为假(False)则执行命令2
格式
#写法一:
if [ 判断条件 ]; then
commands1
else
commands2
fi
#写法二:
if [[ 判断条件 ]]; then
commands1
else
commands2
fi
#写法三:
if test 判断条件; then
commands1
else
commands2
fi
#类似于
[ 判断条件 ] && commands1 || commands2
流程图
举例
read -p "请输入名字:" NAME
if [ $NAME == "wangmingqu" ]; then
echo "您输入的名字为:$NAME"
echo "欢迎光临"
else
echo "您输入的名字是:$NAME"
echo "进错房间啦"
fi
if…elif…else
简介
选择很多,能走的路只有一条。
如果条件1满足,执行命令1后结束;如果条件1不满足,再看条件2,如果条件2满足则执行命令2后结束;如果条件1和条件2都不满足,那么执行命令3。
格式
#写法一:
if [ 判断条件1 ]; then
commands1
elif [ 判断条件1 ]; then
commands2
else
commands3
fi
#写法二:
if [[ 判断条件1 ]]; then
commands1
elif [[ 判断条件1 ]]; then
commands2
else
commands3
fi
#写法三:
if test 判断条件1; then
commands1
elif test 判断条件2; then
commands2
else
commands3
fi
流程图
举例
read -p "请输入数值:" NUMBER
if [ $NUMBER -lt 10 ]; then
echo "输入的数值是个位数"
elif [ $NUMBER -ge 10 ] && [ $NUMBER -lt 100 ]; then
echo "输入的数值是十位数"
else
echo "输入的数值大于等于100"
fi
层次嵌套
简介
多次判断,多条路,能走的路只有一条。
如果条件1满足,执行命令1;如果条件2也满足执行命令2,如果不满足只执行命令1,然后结束。
如果条件1不满足,不看条件2,直接看条件3,如果条件3满足执行命令3;如果条件3不满足,则看条件4。如果条件4满足则执行命令4,如果条件4不满足则执行命令5.
格式
if [ 条件判断1 ]; then
commands1
if [ 条件判断2 ]; then
commands2
fi
else
if [ 条件判断3 ]; then
commands3
elif [ 条件判断4 ]; then
commands4
else
commadns5
fi
fi