**
until不成立循环语句
**
语法:
-----------------------------------------------------------------
变量名=变量值
until [ $m -eq 5 ]
do
command
done
格式:
-----------------------------------------------------------------
until 条件测试命令 ;do
命令序列
done
举例:
-----------------------------------------------------------------
# vi wang.sh
----------------------------
#!/bin/bash
w=10
until [ $w -lt 5 ] ;do
echo $w
((w--))
done
# vi wang.sh
----------------------------
#!/bin/bash
w=10
until (($w>20));do
echo $w
((w++))
done
until用法,显示变量值从0到99
--------------------------------------------------------------------------------------------------------------------------------
#!/bin/bash
varl=0 #定义变量
echo "test until loop control" #输出内容
until test $varl == 100 #如果这个条件不成立,执行下面命令,如成立则结束循环
do #执行下面的命令
{
echo "varl is :$varl" #输出变量值
let varl=varl+1 #变量值加1,let实现循环+1
}
done #结束
echo "test until end " #输出内容
证明let实现循环赋值,let与((变量名++))相同
=============================================
实践
vim wml.sh
--------------------------------------------------------
#!/bin/bash
let "t1 = ((a = 5 + 3, b = 7 - 1,c = 15 -4))"
echo "t1 = $t1, a = $a, b = $b"
--------------------------------------------------------
[root@bogon ~]# ./wang.sh
t1 = 11, a = 8, b = 6 //目前我们t1取出的值是11
证明
vim wml.sh
-------------------------------------------------------
#!/bin/bash
let "t1 = ((a = 5 + 3, b = 7 - 1))" //c = 15 -4 去掉,如果t1取出值为b = 7 - 1的值,说明let是循环赋值的命令
echo "t1 = $t1, a = $a, b = $b"
-------------------------------------------------------
[root@bogon ~]# ./wang.sh
t1 = 6, a = 8, b = 6 //t1=6足以说明b = 7 -1赋值成功,证明let是循环赋值的命令