shell编程-shell编程-循环语句(1)

shell编程-shell编程-循环语句(1)

ID:38534861

大小:43.00 KB

页数:4页

时间:2019-06-14

shell编程-shell编程-循环语句(1)_第1页
shell编程-shell编程-循环语句(1)_第2页
shell编程-shell编程-循环语句(1)_第3页
shell编程-shell编程-循环语句(1)_第4页
资源描述:

《shell编程-shell编程-循环语句(1)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、shell编程-shell编程-循环语句(1) shell编程之循环语句(1)目标:完成这一章,你将能够作以下事情:使用while语句在条件为真的时候重复地执行一段代码。使用until语句重复执行一段代码直到条件为真。使用交互性的for语句进行循环控制。1.循环的简单介绍目标:重复的执行一段命令列表。控制;基于一个关键命令的返回值。三种格式:while...do...doneuntil...do...donefor...do...done循环语句让你可以重复执行一个命令列表,而决定是继续循

2、环还是跳出循环是基于一个命令的返回值。test命令常常被用来控制一个循环是否继续。与分支语句不同的是,在分支语句中开始一个分支语句的关键字和结束一个分支语句的关键字是相反的(if/fi和case/esac),循环语句由一个关键字和一些条件开始,循环体整个用do/done来包围起来。2.使用let来进行算术计算语法:letexpressionor((expression))例子:$x=10$x=12$y=2$let"x<10"$letx=x+2$echo$?$echo$x

3、112$((x>10))$let"x=x/(y+1)"$echo$?$echo$x$04$if((x>10))$((x=x+1))>thenechoxgreater$echo$x>elseechoxnotgreater5fixgreater循环语句通常使用一个增长的数字变量来进行控制。使用let命令,可以在shell脚本中使用算术表达式。这个命令允许使用长的整数运算。在上例中,expr

4、ession代表一个shell变量的算术表达式和能够被shell识别的操作符,而(())可以替let命令。shell能够识别的表达式如下所示:操作符描述-减去!逻辑相反*/%乘,除,余数+-加,减<=>=<>关系比较==!=等于不等于=赋值括号能够被用作改变表达式中计算的顺序,就像在let"x=x/(y+1)"中一样注意双引号被用来忽略括号的特殊含义。同样如果你希望使用空格来分隔操作符和操作符的时候,就必须使用双引号,或者(())语句:let"

5、x=x+(y/2)"或者((x=x+(y/2)))当使用逻辑和关系操作符,(!,<=,>=,<,>,++,~=),的时候,shell会返回一个代码变量,?会反映结果是真还是假,再一次说明,必须使用双引号来防止shell将大于和小于运算符当作I/O重定向。3.while语句重复执行循环体,直到条件为真语法:whilelistAdolistBdone例子:$cattest_whileX=1while((X<=10))doechohelloXis$XletX=X+1done$test_whilehe

6、lloXis1helloXis2...helloXis10while语句是shell提供的一种循环机制,当条件为真的时候它允许循环体中的命令(listB)继续执行。条件判断是通过listA中最后一个命令的返回值来进行。通常一个test或者let命令被用作控制循环的执行,但是任何命令都能被用来产生一个返回值。上面的例子中使用的是test命令可以用let命令来代替,如下:$X=1$while[$x-le10]>do>echohelloXis$X>letX=X+1>done命令执行的过程如下:1.listA中的命令被执行。2.如果li

7、stA中的最后一个命令的返回值为0(真),执行listB。3.回到第一步。4.如果listA中的最后一个命令的返回值不为0(假),跳到下面done关键字后的第一个命令。提醒:注意while循环会无穷执行下去,因为有一些循环的控制命令的返回值永远为真。$catwhile_infinitewhiletruedoechohellodone$while_infinitehellohello...ctrl+c4.while结构举例例A:例B如果ans为yes就重复执行当有命令行参数时重复

8、执行ans=yeswhile(($#!=0))whiledo["$ans"=yes]iftest-d$1do

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。