循环和分支
循环
循环就是一块当条件为真的迭代的代码块。
for循环
for arg in [list] 这是最基础的循环形式。如果do和for在一行里,那么就需要在do前面加分号如:for arg in list ;do
1 | for arg in list |
for循环有很多用法,举几个例子来了解一下for循环都能够干些什么吧。
1 | # for i in "hello world !" # 这样当作整个字符串 |
while循环
while循环用来测试一个条件,并且一直循环直到条件为true也就是退出码为0的时候退出循环。一般while循环用在提前不知道循环次数的时候。while循环使用中括号把条件括起来,也可以使用双中括号。
1 | while [condition] |
当while有多个条件的时候,只有最后一个参数会决定循环次数
1 | while echo "previous-variable = $previous" |
也有类似C语言的while条件。
1 | while (( a <= LIMIT )) # Double parentheses, |
同样的while后的条件可以是一个函数
1 | condition () |
while可以和read命令进行结合,形成 while read
结构体,能够有效的读和处理文件。
1 | while read line |
until循环
until循环是和while循环正好相反,until会一直进行循环,直到条件变为false;
1 | until [ condition-is-true ] |