Linux shell 编程之while循环、until循环

一、while循环

while命令也可以用来实现循环

基本格式如下:

while test command
do
     commands
done
若test command条件判断成立,则执行commands,若不成立,则跳出循环。
$ cat test.sh
#!/bin/bash

a=1
while [ $a -le 10  ]
do
   echo "a=$a"
   a=$[$a+1]
done
$ ./test.sh
a=1
a=2
a=3
a=4
a=5
a=6
a=7
a=8
a=9
a=10
while命令有个奇怪的用法,while命令允许在while语句行定义多条命令,但是只有最后一条测试命令的退出状态 决定循环是否停止。

$ cat test.sh
#!/bin/bash


a=1
while echo $a
      [ $a -le 10  ]  
do
   echo "a=$a"
   a=$[$a+1]
done
$ ./test.sh
1
a=1
2
a=2
3
a=3
4
a=4
5
a=5
6
a=6
7
a=7
8
a=8
9
a=9
10
a=10
11
注意最后一行打印出了"11",之后 判断 条件[ $a -le 10  ]不成立,然后退出循环。

二、until循环

until命令也可以用来实现循环,基本格式:

until test command
do
    other commands
done  
与while命令恰恰相反,若test command条件判断不成立,则执行commands,若成立,则跳出循环。until命令在until语句行也可以定义多条命令,只有最后一条测试命令的退出状态。

$ cat test.sh
#!/bin/bash

a=1
until echo $a
      [ 10 -le $a  ]    
do
   echo "a=$a"
   a=$[$a+1]
done
$ ./test.sh
1
a=1
2
a=2
3
a=3
4
a=4
5
a=5
6
a=6
7
a=7
8
a=8
9
a=9
10

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值