«

while命令

一个摆子 发布于 阅读:53 Linux


while命令允许定义一个要测试的命令,然后循环执行一组命令,只要定义的测试命令返回的是退出状态码0.它会在每次迭代的一开始测试test命令,在test命令返回非零退出状态码时,while命令会停止执行那组命令
while的基本格式

while test command
do
    other commands
done

while命令中定义的test command和if-then语句中的格式一模一样。可以使用任何普通的bash shell命令,或者用test命令进行条件测试。
while命令的关键在于所指定的test command的退出条件状态码必须随着循环中运行的命令而改变。如果不改变则会出现死循环。
最常见的``test command```的用法是用方括号来检查循环命令中用到的shell变量值

#!/bin/bash
vat1=10
while [ $val1 -gt 0 ]
do
    echo $var1
    var1=$[ $var1 - 1]
done

while命令定义了每次迭代时检查的测试条件
while [ $var1 -gt 0 ]
只要测试条件成立,while命令就会不停地循环执行定义的命令。测试条件中用到的变量必须修改,否则就会死循环
使用多个测试命令
while命令允许在命令行定义多个测试命令。只有最后一个测试命令的退出状态码才能决定是否退出循环。
until命令
until命令和while命令工作的方式完全相反。until命令需要指定一个非零退出状态码的测试命令。只有测试命令不为0,bash shell才会执行循环中列出的命令。状态码为0,循环结束
until命令格式

until test commands
do
    other commands
done

until命令语句可以放入多个测试命令。最后一个命令的退出状态码决定是否继续执行循环

交流群:

请先 登录 再评论