一.for循环
1.结构
for 变量名 in 取值列表
do
命令序列
done
for 变量名 in 取值列表
do
for 变量名 in 取值列表
do
命令序列
done
done
2.概念
单循环——for循环就是把一个步骤一直重复执行的操作。如果没有终止条件,那么这一步骤就会一直执行下去,直到为止。书本上对循环的定义是:用来控制语句块重复执行的一种结构
双循环——也可以理解为内外循环,就是取第一个外循环参数执行后,进入内循环,一直把内循环一直操作,直到为止,在跳出内循环,执行外循环的第二个参数,再次进入内循环,进行操作,直到为止,以此方式一直执行下去,直到外循和内循环结束,执行的次数可以简单理解为n*n次。
二.while循环
1.结构
while 条件测试操作
do
命令序列
done
2.概念
重复测试某个条件,只要条件成立则反复执行
首先判断while后的条件测试操作结果,如果条件成立,则再次测试,直到结果不成立为止
三.until
1.结构
until 条件测试操作
do
命令序列
done
2.概念
重复测试某个条件,只要条件不成立则反复执行
首先判断until后的条件测试操作结果,如果不条件成立,则再次测试,直到结果成立为止
四.函数
1.结构
function 函数名 {
命令序列
}
或者
函数名 () {
命令序列
}
2.概念
函数定义完之后并不会自动执行,需要调用才行,好处在于可以写一段功能代码作为函数,有需要就直接调用定义的时候哪怕出现语法错误也没关系,不调用就不会报错
当然我们写函数最终目的还是为了调用,为了实现某个功能块
3.sh和set
set -x:显示运行过程
set +x:不显示运行过程
sh 参数 脚本名字
-n:不会执行该脚本,仅查询脚本语法是否有问题,如果没有语法问题就不显示任何内容,如果有问题会提示报错。
-v:在执行脚本时,先将脚本的内容输出到屏幕上然后执行脚本,如果有错误,也会给出错误提示。
-x:将执行的脚本内容输出到屏幕上,这个是对调试很有用的参数。 当脚本文件较长时,可以使用 set 命令指定调试一段脚本