目录
一、for循环语句
使用 for 循环语句时,需要指定一个变量及可能的取值列表,针对每一个不同的取值重复执行相同的命令序列,直到变量值用完退出循环。
for语法结构:
for 变量名 in 取值列表
do
命令序列
done
花括号{ }和seq在for循环的应用
for i in {1..50..2} 1-50的奇数
for i in {2..50..2} 1-50的偶数
for i in {10..1} 1-10倒序排列
for i in $(seq 10) 1-10正序排列
for i in $(seq 10 -1 1) 1-10倒序排列
for i in $(seq 1 2 10) 1-10的奇数,中间为步长
for i in $(seq 2 2 10) 1-10的偶数,中间为步长
for语句执行流程
首先将列表中的第1个取值赋给变量,并执行 do···done 循环体中的命令序列
然后将列表中的第2个取值赋给变量,并执行循环体中的命令序列……
以此类推,直到列表中的所有取值用完,最后将跳至 done 语句,表示结束循环
列出奇偶数
执行结果
计算10以内的奇数和
执行结果
检查ip存活状态
先编写IP列表
脚本内容
执行结果
幸运会员
用户列表
脚本内容
执行结果
数字炸弹游戏Ⅰ
要求在1-100内定义一个数字,与用户交互,要求,每次提醒用户,数字猜大了还是猜小了,直到猜中为止,最后统计猜的次数
PS:每次猜的数字不允许重复(脚本自身检测)
脚本内容
执行结果
二、while循环语句
for循环语句非常适用于列表对象无规律,且列表来源已固定(如某个列表文件)的场合。而对于要求控制循环次数、操作对象按数字顺序编号、按特定条件执行重复操作等情况,则更适合使用另一种循环—while语句。
使用 while循环语句时,可以根据特定的条件反复执行一个命令序列,直到该条件不再满足时为止。但是在脚本应用中,应该避免出现死循环的情况,否则后边的命令操作将无法执行。
循环体内的命令序列中应包括修改测试条件的语句,以便在适当的时候使测试条件不再成立,从而结束循环。
while语句语法结构:
while 条件测试操作
do
命令序列
done
执行流程:
首先判断 while 后的条件测试操作结果,如果条件成立,则执行 do···done 循环体中的命令序列
返回 while 后再次判断条件测试结果,如果条件仍然成立,则继续执行循环体
再次返回到 while 后,判断条件测试结果…如此循环
直到 while 后的条件测试结果不再成立为止,最后跳转到 done 语句,表示结束循环
列出1-100之间能被3整除的数
执行结果
猜商品价格
执行结果
三、until循环语句
重复测试某个条件,只要条件不成立则反复执行
until语句语法结构:
until 条件测试操作
do
命令序列
done
计算1~50的和值
执行结果
四、循环嵌套
- 一个==循环体==内又包含另一个完整的循环结构,称为循环的嵌套。
- 每次外部循环都会==触发==内部循环,直至内部循环完成,才接着执行下一次的外部循环。
- for循环、while循环和until循环可以相互嵌套。
进入商店购物
执行结果
99乘法表
执行效果
打印直角三角形
执行结果
打印倒三角
执行结果