linux 自学05 shell 编程基础 之 循环
2014-06-07 11:20
309 查看
循环
除了if....then....if这种条件判断式之外,循环可能是程序当中最重要的一环了,循环可以不断的执行某个程序段落,直到用户设定的条件达成为止,所以,重点是哪个条件达成是什么,除了这种依据判断式达成与否的不定循环之外,还有另外一种已经固定要跑很多次的循环形态,可称为固定循环的形态。
2.1、while do done
语法结构如下:
说明:while简单理解就是当....时,所以这种方式说的是当condition条件成立时,就进行循环,直到condition的条件不成立时才停止的意思。
2.2、while循环练习
需求:假设我们让使用者输入yes或者YES才结束程序的执行,否则就一直进行告知用户输入字符串。
说明:当$yn这个变量不是yes或者不是YES时,才进行循环内的程序,而如果$yn是yes或者YES时,就会离开循环,还有一种情况恰恰与while相反,它说的是当condition条件成立时,就终止循环,否则就持续进行循环的程序段。
2.3、until do done
2.4、until练习
2.5、需求:
计算1+2+3+......+100这个数
说明:该程序直到最后结果为5050即可,就会终止循环。
2.6、for...do...done(固定循环)
相对于while、until的循环方式是必须要符合某个条件的状态,for这种语法,则是已经直到要进行几次循环的状态,语法结构如下:
说明:这个$var的变量内容在循环工作时:
1、第一次循环时,$var的内容为con1
2、第二次循环时,$var的内容为con2
3、第三次循环时,$var的内容为con3
2.7、需求
假设我有三种动物,分别是dog、cat、elephant三种,我想给每一行都输出这样:there are dos...子类的字样。则可以:
2.8、需求
使用管道命令的cut提出账号名称后,以id以及finger分别检查使用者的标示符与特殊的参数,由于不同的linux系统上面的账号都不一样,此时实际去提出/etc/passwd并使用循环处理,就是一个可行的方案了。
说明:执行上述的脚本之后,你系统账号就会被提出来,这个动作还可以用在每个账号的删除,重整上面。
2.9、需求
让用户输入某个目录文件名,然后找出目录内的文件名的权限。
2.9、for...do...done的数值处理
除了上述的方法之外,for循环还有另外一种写法,语法结构如下:
说明:这种语法适合于数值方式的运算当中,在for后面的括号的三串内容理解为:
初始值:某个变量在循环当中起始值,直接以类i=1设定好
限制值:当变量的值再这个限制值的范围内,就继续进行循环,比如:i<=100
执行步骤:每作一次循环时,变量的变化量,比如i=i+1
值得注意的是,在执行步骤的设定上,如果每次增加1,则可以使用类似i++的方式,亦即使i每次循环都增加1的意思。
除了if....then....if这种条件判断式之外,循环可能是程序当中最重要的一环了,循环可以不断的执行某个程序段落,直到用户设定的条件达成为止,所以,重点是哪个条件达成是什么,除了这种依据判断式达成与否的不定循环之外,还有另外一种已经固定要跑很多次的循环形态,可称为固定循环的形态。
2.1、while do done
语法结构如下:
说明:while简单理解就是当....时,所以这种方式说的是当condition条件成立时,就进行循环,直到condition的条件不成立时才停止的意思。
2.2、while循环练习
需求:假设我们让使用者输入yes或者YES才结束程序的执行,否则就一直进行告知用户输入字符串。
说明:当$yn这个变量不是yes或者不是YES时,才进行循环内的程序,而如果$yn是yes或者YES时,就会离开循环,还有一种情况恰恰与while相反,它说的是当condition条件成立时,就终止循环,否则就持续进行循环的程序段。
2.3、until do done
2.4、until练习
2.5、需求:
计算1+2+3+......+100这个数
说明:该程序直到最后结果为5050即可,就会终止循环。
2.6、for...do...done(固定循环)
相对于while、until的循环方式是必须要符合某个条件的状态,for这种语法,则是已经直到要进行几次循环的状态,语法结构如下:
说明:这个$var的变量内容在循环工作时:
1、第一次循环时,$var的内容为con1
2、第二次循环时,$var的内容为con2
3、第三次循环时,$var的内容为con3
2.7、需求
假设我有三种动物,分别是dog、cat、elephant三种,我想给每一行都输出这样:there are dos...子类的字样。则可以:
2.8、需求
使用管道命令的cut提出账号名称后,以id以及finger分别检查使用者的标示符与特殊的参数,由于不同的linux系统上面的账号都不一样,此时实际去提出/etc/passwd并使用循环处理,就是一个可行的方案了。
说明:执行上述的脚本之后,你系统账号就会被提出来,这个动作还可以用在每个账号的删除,重整上面。
2.9、需求
让用户输入某个目录文件名,然后找出目录内的文件名的权限。
2.9、for...do...done的数值处理
除了上述的方法之外,for循环还有另外一种写法,语法结构如下:
说明:这种语法适合于数值方式的运算当中,在for后面的括号的三串内容理解为:
初始值:某个变量在循环当中起始值,直接以类i=1设定好
限制值:当变量的值再这个限制值的范围内,就继续进行循环,比如:i<=100
执行步骤:每作一次循环时,变量的变化量,比如i=i+1
值得注意的是,在执行步骤的设定上,如果每次增加1,则可以使用类似i++的方式,亦即使i每次循环都增加1的意思。
相关文章推荐
- linux之基础shell脚本编程2 if语句循环判断
- Linux.Shell编程基础知识一
- Linux基础Shell编程
- Linux学习之Shell编程基础
- Linux学习篇之shell编程基础
- Linux大数据开发基础:第十一节:Shell编程入门(三)
- Linux.Shell编程基础知识三
- 黑马程序员 自学08C#编程基础之循环复习
- Spark修炼之道(基础篇)——Linux大数据开发基础:第十一节:Shell编程入门(三)
- Linux之shell编程基础
- Linux 下的 shell 编程之 until 循环
- PowerShell_零基础自学课程_2_Powershell与Cmd以及Unix/Linux Shell
- LinuxC/C++编程基础(13) shell脚本简单实例
- Spark修炼之道(基础篇)——Linux大数据开发基础:第十四节:Shell编程入门(六)
- Linux Bash Shell学习(七):shell编程基础——运行Shell脚本、function
- PowerShell_零基础自学课程_2_Powershell与Cmd以及Unix/Linux Shell
- Linux基础------Shell中的循环
- 黑马程序员 自学05C#编程基础之关系运算符与逻辑运算符
- Linux 下的 shell 编程之 for 循环
- Spark修炼之道(基础篇)——Linux大数据开发基础:第十四节:Shell编程入门(六)