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

12.3、bash脚本循环语句

时间:2017-12-25 21:24:14      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:for while until

1、bash脚本程序执行顺序:

    顺序执行

    选择执行:if、case

    循环执行:for、while、until


2、for循环:

 格式:

for VAR in list;do

  循环体

done


注释:VAR是变量,list是循环列表;

list的生成方式:

    直接给出     //如:1 2 3 4

    {start..end}  //注意是两个点,内建列表方式

    seq [start [increment]] last

        seq 10

        seq 5 10

        seq 2 2 10   //步长为2的整数列表

    返回命令的列表

    glob

    变量引用:如$@,$*


3、while循环:

  格式:

while CONDITION;do

    循环体

    循环控制变量修正表达式

done


注释:CONDITION为条件表达式


4、while条件介绍:

    进入条件:CONDITION测试条件为真时进入循环

    退出条件:CONDITION测试条件为假时退出循环


while循环示例:

求100以内所有正整数之和

方法一:

[root@localhost ~]# cat sum_100 

#!/bin/bash

sum=0

for i in {1..100};do

sum=$[$sum+$i]

done

echo $sum

[root@localhost ~]# 


方法二:

[root@localhost ~]# cat while_sum_100

#!/bin/bash

declare sum=0

declare i=1

while [ $i -le 100 ];do

sum=$[$sum+$i]

let i++

done

echo $sum

[root@localhost ~]# 


注意:for是列表循环,如果求1到10000的所有正整数之和,那么会在内存空间为这10000个数分别分配内存空间用来存储数据,这样是对内存的一种浪费,基于这种考虑,while可能比for循环性能更好些,因为while循环只有一个变量用来存储数据。



5、until循环:

格式:

until CONDITION;do

    循环体

    循环控制变量修正表达式

done


6、until循环条件:

    进入条件:CONDITION测试条件为假时,进入循环

    退出条件:CONDITION测试条件为真时,退出循环


示例:

until循环示例:

求100以内所有正整数之和

[root@localhost ~]# cat until_sum_100

#!/bin/bash

declare -x sum=0

declare -x i=1

until [ $i -gt 100 ];do

sum=$[$sum+$i]

let i++

done

echo $sum

[root@localhost ~]# bash until_sum_100 

5050


注意:#bash -x until_sum_100 //检查脚本执行过程,-x为调试模式




练习:

1、求100以内所有偶数之和


2、求100以内所有奇数之和

3、创建10个用户,user101-user110,密码同用户名

4、打印九九乘法表

5、打印逆序额九九乘法表



















12.3、bash脚本循环语句

标签:for while until

原文地址:http://blog.51cto.com/10631377/2054544

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