您的位置:首页 > 运维架构 > Shell

shell脚本中的循环

2014-04-16 21:07 369 查看
说明:

1.本文仅供学习交流,不得用于其它目的,转载请标明出处,欢迎转载;

2.本文参考资料为:《鸟哥的Linux私房菜:基础学习篇》;

学过C/C++/Java的人都知道,循环是一种重要的结构,下面我们要求:

1.用户输入整数n;

2.求出1+2+...+n的和;

3.输出和

这是一道非常简单的循环题,我们可以很快用C++完成该任务,如下:

#include<iostream>
using namespace std;
int main()
{
int i,n,sum;
cout<<"input a integer:";
cin>>n;
sum=0;
for(i=0;i<=n;i++)
{
sum+=i;
}
cout<<"1+2+...+"<<n<<"="<<sum<<endl;
return 0;
}


那么,如果用shell脚本我们如何实现呢?

方法1:for_do_done

for(( 初始化;循环条件;变化))

do

....

done

注意:上面的((两个括号必须紧挨着,中间不能有空格,否则报错,右括号也是!

举例:



方法2:for_in_do_done

for 变量 in 集合

do

...

done



注意:上面第12行中的“seq 1 $n”表示从1到n构成的序列。

方法3:while_do_done

while [ 条件]

do

...

done

注意:条件指的是进入循环题的条件,这与下面的until_do_done正好相反。



方法4:until_do_done

until [ 条件 ]

do

...

done

注意:条件指的是退出循环体的条件,这正好与我们的高级语言相反。



最后,我们用一个由while_do_done和for_do_done组成的二维重循环来输出“九九乘法表”

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: