shell编程之循环语句

169 阅读1分钟

一.循环语句之for

1.循环含义

将某代码段重复运行多次,通常有进入循环的条件和退出循环的条件。

重复运行次数

  • 循环次数事先已知
  • 循环次数事先未知

常见的循环的命令:for, while, until

微信截图_20230814163744.png

2. for循环语句

概述:

  • 读取不同的变量值,用来逐个执行同一组命令。
  • 使用场景:一般用于循环次数事先已知的场景。
  • 执行机制:遍历。

机制:

1.依次将列表中的元素赋值给“变量名”; 每次赋值后即执行一次循环体; 直到列表中的元素耗尽,循环结束。

2.如果省略 [in WORDS ... ] ,此时使用位置参数变量 in "$@"

格式:

for 变量名 in 取值列表

do

命令序列

done

3.演示

举例1:从1到100累加和为?

微信截图_20230814165545.png

微信截图_20230814165607.png

举例2:批量添加用户,并修改密码为123456

微信截图_20230814170414.png

微信截图_20230814170555.png

微信截图_20230814170710.png

举例3:根据IP地址检查主机状态

微信截图_20230814171713.png

微信截图_20230814171655.png

微信截图_20230814171748.png

4.并行执行脚本

普通for循环是串行,一个一个执行。

在do和done中间增加 { } 符号,可以多线程同时执行。

举例:

  • ping 192.168.37.0/24网段内的所有主机。

微信截图_20230814173115.png

二.循环语句之while

相对于for,需要知道循环次数

我们只知道停止条件,不知道次数,就需要使用while

直到达到条件

格式:

while 条件测试操作

do

命令序列

done

举例:猜商品价格

微信截图_20230814183035.png

微信截图_20230814183007.png

三.循环语句之until

  • 重复测试某个条件,只要条件不成立则反复执行

格式:

until 条件测试操作

do

命令序列

done

微信截图_20230814183508.png

举例:累加1-100之和

微信截图_20230814185559.png

微信截图_20230814185524.png