shell脚本中的循环
2014-04-16 21:07
369 查看
说明:
1.本文仅供学习交流,不得用于其它目的,转载请标明出处,欢迎转载;
2.本文参考资料为:《鸟哥的Linux私房菜:基础学习篇》;
学过C/C++/Java的人都知道,循环是一种重要的结构,下面我们要求:
1.用户输入整数n;
2.求出1+2+...+n的和;
3.输出和
这是一道非常简单的循环题,我们可以很快用C++完成该任务,如下:
那么,如果用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组成的二维重循环来输出“九九乘法表”
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组成的二维重循环来输出“九九乘法表”
相关文章推荐
- shell分割字符串
- shell script 统计文本中字符串的出现的频率及按频率的多少从高到低输出_面试算法题之一
- linux shell 命令学习(1) du- estimate file space usage
- Linux运维系统工程师系列之shell脚本_3
- shell编程经典实例
- Linux运维系统工程师系列之shell脚本_2
- shell编程报错:“syntax error near unexpected token `”
- 对Python、shell的一些思考
- 天外飞仙级别的Linux Shell命令
- 用minicom 进行自动化测试 --通过bash脚本操作minicom
- [Windows Powershell]-学习笔记(1)
- Bash中自动补全时忽略大小写,Up,Down来搜索以该串字符开头的历史命令(.inputrc)
- bash & Makefile & 正则表达式学习
- shell中使用while循环ssh时只循环第一行的问题解决
- JSch:纯JAVA实现远程执行SSH2主机的SHELL命令
- 使用Jsch执行Shell脚本
- Linux Shell在文件的第一行插入字符串
- 使用 shell 脚本对 Linux 系统和进程资源进行监控
- Linux shell脚本的字符串截取
- Linux运维系统工程师系列之shell脚本_1