目录

一、for循环语句

二、While循环

三、双层循环    三层循环

四、exit、continue和break


一、for循环语句

axios for循环500个请求_安全

读取不同的变量值,用来逐个执行同一组命令

for循环经常使用在已经知道要进行多少次循环的场景

格式:

for  变量名  in  取值列表
do
    命令序列
done

 示例1: 循环出0到10之间的整数

法一:

#!/bin/bash
for i in {1..10}
  do
    echo $i
  done

 
法二:

#!/bin/bash
for i in $(seq 1 10)
do
  echo $i
done

 

 示例2:求1..10奇数和

#/bin/bash
sum=0
for i in {1..10..2}
do
  sum=$[sum+i]
  let i++
done

echo "10以内的奇数和为:$sum"

示例3:批量创建用户并修改密码

#!/bin/bash
for user in {1..10}
  do
   echo stu${user}|xargs -n1 useradd
   echo "123123"|passwd --stdin stu${user}
  done

示例4:批量改名

#!/bin/bash
cd /data1
for i in *
do
name=`echo $i |cut -d "." -f1`
mv $i ${name}.bak

遍历    迭代    递归

二、While循环

axios for循环500个请求_安全_02

For是遍历的循环

而while循环是判断条件,从而进行指令

Demo用while批量添加用户

axios for循环500个请求_运维_03

axios for循环500个请求_linux_04

Demo2

axios for循环500个请求_axios for循环500个请求_05

解:

axios for循环500个请求_linux_06

用let a++等效于exit

Until循环

axios for循环500个请求_axios for循环500个请求_07

Demo1:

输出1到10的和:

axios for循环500个请求_运维_08

axios for循环500个请求_网络_09

axios for循环500个请求_网络_10

for循环一般在正常执行的时候是一个进程串行执行的取值列表

多线程并行执行

axios for循环500个请求_运维_11

Wait是为了等待上面的命令执行完了之后,再去执行后面的cat命令,如果没有wait后面的语句是不会等待后台进程的,会造成一些需要有上下文依赖关系的程序执行错误

For循环的分隔符     

IFS    默认是   空格   制表符\t      换行符\n

For循环的三个分割符号

Demo:

axios for循环500个请求_linux_12

像PATH这样的文件里面路径,想要分行输出,是以冒号为分隔符

axios for循环500个请求_网络_13

如何用while循环去读取文件

axios for循环500个请求_安全_14

axios for循环500个请求_安全_15

#line为变量名

综合格式

While read变量名

do

Done

For while  until 都是单层循环

三、双层循环    三层循环

axios for循环500个请求_运维_16

外层循环没执行一次,内层循环都要全部执行完毕后,下一次外层循环才能再执行

把内层循环看做是外层循环的一个命令语句

Exit               退出shell脚本进程exit执行后,后面的语句都不会执行

axios for循环500个请求_axios for循环500个请求_17

执行结果:

axios for循环500个请求_安全_18

外部执行一次,内部执行三次

Break              跳出单层循环,break2  跳出2层循环,循环以外的语句,仍然会执行,循环内的break后面的语句仍然会执行

axios for循环500个请求_linux_19

执行结果

axios for循环500个请求_安全_20

外部循环执行5次,内部执行3次

Continue    用于终止某次循环的执行,但不会完全终止整个循环

axios for循环500个请求_linux_21

Demo

制作一个九九乘法表:

外循环表示行

内循环表示列

axios for循环500个请求_网络_22

采用制表符可以很清楚的列出表格

axios for循环500个请求_安全_23

四、exit、continue和break

exit:退出shell脚本进程。Exit执行后,脚本后的语句都不会再执行。

break 有时候我们想在某种条件出现的时候终止循环而不是等到循环条件为false才终止。 这时我们可以使用break来完成。break用于完全结束一个循环,跳出循环体执行循环后面的语句。

continue continue和break有点类似,区别在于continue只是终止本次循环,接着还执行后面的循环,break则完全终止循环。 可以理解为continue是跳过当次循环中剩下的语句,执行下一次循环。

continue和break使用方法:

break:

1、语法 break 将用于以下break语句退出循环:

2、break n 这里n指定的第n个封闭的循环退出。

continue:

1、语法 continue 和break语句一样,一个整数参数可以给continue命令跳过嵌套循环的命令。

2、continue n 这里n指定第n个封闭循环 continue 。
 

Exit(0-255)  退出shell脚本,并且可以返回指定状态码

Break      指的是跳出当前循环体,去执行循环后面的操作

Continue