SHELL中if的使用

一些shell基础的使用可以参考shell基础概述
快捷查看指令 ctrl+f 进行搜索会直接定位到需要的知识点和命令讲解(如有不正确的地方欢迎各位小伙伴在评论区提意见,博主会及时修改)

if语句

单分支if
if [ 条件表达式 ]
	then
		代码
fi
简化写法
if [ 条件表达式 ];then
	代码
fi
if语句嵌套

if的嵌套 不要超过 三层

if [ 条件表达式 ]
	then
		代码
		if [ 条件表达式 ]
			then
				代码
		fi
fi
#!/bin/bash
echo -n "请输入1-3来选择地点:"
read zone
if [ "$zone" -eq 1  ]
    then
        echo "北京"
fi

if [ "$zone" -eq 2 ];then
    echo "上海"
fi

if [ "$zone" -eq 3 ]
    then
        echo "广州"
fi
if [ "$zone" -ne 1 -a "$zone" -ne 2 -a "$zone" -ne 3 ]
    then
        echo "你不上这你还想去哪"
fi

if-else结构
if [ 条件表达式 ]
	then
		代码1
else
	代码2
fi
### if-else 结构中可以继续嵌套
### 执行流程: 首先执行条件表达式的判断,若条件表达式成立,则执行代码1 若条件表达式不成立 则执行代码2
多分支
if [ 条件表达式1 ]
	then
		代码1
elif [条件表达式]
	then
		代码2
elif [条件表达式]
	then
		代码3
....
else
	代码
fi
#### 多分支 不要超过三层
案例:
#!/bin/bash
echo -e "可选城市:\n1. 北京\n2. 上海"
echo -n  "请输入1-2决定你以后想工作的城市:"
read n
if [ "$n" -eq 1 ]
    then
        echo "您选择的是北京"
        echo -e "薪资(月薪)选择:\n1. 8k以下\n2. 1.2w以下\n3. 1.8w以上"
        echo -n "接下来你可以选择你想要的薪资:"
        read a
            if [ "$a" -eq 1 ]
               then
                   echo "你选择在北京发展,并且期望薪资是8k"
            elif [ "$a" -eq 2 ]
                then
                    echo "你选择在北京发展,并且期望薪资是1.2w"
            elif [ "$a" -eq 3 ]
                then
                    echo "你选择在北京发展,并且期望薪资是1.8w"
            else
                echo "输入参数错误,请重新输入"
            fi
elif [ "$n" -eq 2 ]
    then
        echo "您选择的是上海"
        echo -e "薪资(月薪)选择:\n1. 8k以下\n2. 1.2w以下\n3. 1.8w以上"
        echo -n "接下来你可以选择你想要的薪资:"
        read b
            if [ "$b" -eq 1 ]
               then
                   echo "你选择在上海发展,并且期望薪资是8k"
            elif [ "$b" -eq 2 ]
                then
                    echo "你选择在上海发展,并且期望薪资是1.2w"
            elif [ "$b" -eq 3 ]
                then
                    echo "你选择在上海发展,并且期望薪资是1.8w"
            else
                echo "输入参数错误,请重新输入"
            fi
else
    echo "输入错误"
fi

你可能感兴趣的:(Linux,linux,运维)