循环次数不一定是固定的,更适合用while until
可以固定
可以不固定
一,while语句结构
while 条件测试
do
循环体
done
==当条件测试成立(条件测试为真),执行循环体
#!/usr/bin/bash
ip=192.168.40.135
while ping -c1 -W1 $ip &>/dev/null
do
sleep 1
done
echo "$ip is down"
二,until语法结构
until 条件测试
do
循环体
done
==当条件测试成立(条件测试为假),执行循环体
#!/usr/bin/bash
ip=192.168.40.135
until ping -c1 -W1 $ip &>/dev/null
do
sleep 1
done
echo "$ip is up"
三,条件测试
条件测试可以为任意表达式,只要条件测试为真或为假
#!/usr/bin/bash
while date &>/dev/null # date &>/dev/null 条件为真,执行
do
date;sleep 2
done
#!/usr/bin/bash
until [ 1 -eq 2 ] # [ 1 -eq 2 ] 条件为假,执行
do
date;sleep 1
done