while do done, until do done (不定循环)
一般来说,不定循环最常见的就是下面这两种状态了:
while [ condition ] <==中括号内的状态就是判断式
do <== do是循环的开始
程序段落
done <== done是循环的结束
while 的中文是“当....时”,所以,这种方式说的是“当 condition 条件成立时,就进行循环,直 到 condition 的条件不成立才停止”的意思。还有另外一种不定循环的方式:
until [ condition ]
do
程式段落
done
这种方式恰恰与 while 相反,它说的是"当 condition 条件成立时,就终止循环, 否则就持续 进行循环的程序段"。
for...do...done (固定循环)
语法是:
for var in con1 con2 con3 ...
do
程式段
done
以上面的例子来说,这个 $var 的变量内容在循环工作时:
- 第一次循环时,$var的内容为con1;
- 第二次循环时,$var的内容为con2;
- 第三次循环时,$var的内容为con3;
- ....
for...do...done 的数值处理
for 循环还有另外一种写法!语法如下:
for (( 初始值; 限制值; 执行步阶 ))
do
程式段
done
这种语法适合于数值方式的运算当中,在 for 后面的括号内的三串内容意义为:
- 初始值:某个变量在循环当中的起始值,直接以类似 i=1 设置好;
- 限制值:当变量的值在这个限制值的范围内,就继续进行循环。例如 i<=100;
- 执行步阶:每作一次循环时,变量的变化量。例如 i=i+1。