for循环语句
bash shell提供了for命令,允许你创建一个遍历一系列值的循环。每次迭代都使用其中一个值来执行已定义好的一组命令。下面是bash shell中for命令的基本格式。
for var in list
do
commands
done
在list参数中,你需要提供迭代中要用到的一系列值。可以通过几种不同的方法指
定列表中的值。
读取列表中的值
读取列表中的复杂值
从变量读取列表
从命令读取值
更改字段分隔符
用通配符读取目录
while命令某种意义上是if-then语句和for循环的混杂体。
while命令允许定义一个要测试的命令,然后循环执行一组命令,只要定义的测试命令返回的是退出状态码0。它会在每次迭代的一开始测试test命令。
在test命令返回非零退出状态码时,while命令会停止执行那组命令。
while test command
do
other commands
done
while命令中定义的test command和if-then语句中的格式一模一样。可以使用任何普通的bash shell命令,或者用test命令进行条件测试,比如测试变量值。
while命令的关键在于所指定的test command的退出状态码必须随着循环中运行的命令而改变。如果退出状态码不发生变化, while循环就将一直不停地进行下去。
until迭代语句
until命令和while命令工作的方式完全相反。
until命令要求你指定一个通常返回非零退出状态码的测试命令。
只有测试命令的退出状态码不为0,bash shell才会执行循环中列出的命令。
一旦测试命令返回了退出状态码0,循环就结束了。
until test command
do
other commands
done