码迷,mamicode.com
首页 > 其他好文 > 详细

70.for循环、while循环、break跳出循环、continue结束本次循环、exit

时间:2018-06-01 10:52:04      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:for   while循环   break跳出循环   continue结束本次循环   exit退出整个脚本   

for循环

语法:for 变量名 in 条件; do …; done
for 会以空格或者回车为分隔符
案例1

#!/bin/bash
sum=0
for i in `seq 1 100`
do 
 sum=$[$sum+$i]
 echo $i
done
echo $sum

技术分享图片

文件列表循环

#!/bin/bash
cd /etc/
for a in `ls  /etc/`
do 
   if [ -d $a ]
      then 
      ls -d $a
   fi
done

while循环

语法 while 条件; do … ; done

  • 案例1
    #!/bin/bash
    while true
    do
     load=`w|head -1|awk -F ‘load average: ‘ ‘{print $2}‘|cut -d. -f1`
     if [ $load -gt 10 ]
      then
      /usr/lib/zabbix/alertscripts/mail.py  chinantfy@163.com  "load is high"  "load is high: $load"
     fi
     sleep 30
    done
  • 案例2
#!/bin/bash
while :
do
    read -p "Please input a number: " n
    if [ -z "$n" ]
    then
        echo "you need input sth."
        continue
    fi
    n1=`echo $n|sed ‘s/[0-9]//g‘`
    if [ -n "$n1" ]
    then
        echo "you just only input numbers."
        continue
    fi
    break
done
echo $n

技术分享图片

break跳出循环

#!/bin/bash
for i in `seq 1 5`
do
    echo $i
    if [ $i == 3 ]
    then
       break
    fi
    echo $i
done
echo aaaaaaa

技术分享图片

continue结束本次循环?

忽略continue之下的代码,直接进行下一次循环

#!/bin/bash
for i in `seq 1 5`
do
    echo $i
    if [ $i == 3 ]
    then
      continue
    fi
    echo $i
done
echo $i

技术分享图片

exit直接退出脚本


#!/bin/bash
for i in `seq 1 5`
do
    echo $i
    if [ $i == 3 ]
    then
      exit
    fi
    echo $i
done
echo aaaaaaa

技术分享图片

70.for循环、while循环、break跳出循环、continue结束本次循环、exit

标签:for   while循环   break跳出循环   continue结束本次循环   exit退出整个脚本   

原文地址:http://blog.51cto.com/13569831/2122678

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!