Shell流程控制语句
目标
1. 掌握shell脚本中for语句使用
2. 掌握shell脚本中while语句使用
流程程控语句
1.1 什么是流程控制语句
说明:可以控制程序执行顺序的语句
1.2 为什么学习流程控制语句
1. 需要判断条件成立则执行指定语句
2. 能快速遍历列表
3. ....
1.2 流程控制语句分类
1. 条件分支控制语句
2. 条件循环控制语句
2. 条件分支控制语句
说明:条件满足则执行语句
条件分支控制语句 分类
1. if..else..
2. if..elif..
3. case..
2.1 if..else..条件分支
说明:如果条件成立,则执行then后面语句,否则执行else后面语句
格式:
if [ 条件 ]
then
语句块
else
语句块
fi
提示:
1. []中括号在shell中表示为表达式,表达式前后必须有空格;如[ 1 -gt 0 ]
2. 条件中有变量或字符串使用""括起来
3. then可以和if语句写在一行,then语句之前需要天添加; 如:if [ 条件 ];then
4. 结尾有关键字fi
练习1
说明:判断/root目录是否为空
提示:
== 为:判断字符串是否相等
!= 为:判断字符串不相等
扩展:
目录为动态输入
字符串比较 其他符号
序号 | 操作符 | 含义 |
---|---|---|
1 | == | 是否相等 |
2 | != | 不等于 |
3 | -z | 字符串为空 |
4 | -n | 字符串不为空 |
练习2
说明:判断用户名和密码是否为admin 123456是的显示登陆成功,否则显示登陆失败;
练习2 难点分析
1. 条件1 与 条件2 相连的逻辑运算符
2. 字符与逻辑运算符之间要用“空格”分开
逻辑运算符
序号 | 表达 | 说明 |
---|---|---|
1 | -a [and] | 且 |
2 | -o [or] | 或 |
3 | ! | 非 |
练习3
说明:输入数字,判断是否大于0,