资源预览内容
第1页 / 共3页
第2页 / 共3页
第3页 / 共3页
亲,该文档总共3页全部预览完了,如果喜欢就下载吧!
资源描述
Until语句While语句中,只要某条件为真,则重复执行循环代码,until语句正好同while相反,该语句使循环代码重复执行,直到遇到某一条件为真才停止。Until语句的结构如下:until commanddocommandcommand done可以用until语句替换上面备份程序的while语句,完成同样的功能:until $ANS != Y -a $ANS != y for 循环在介绍for循环之前,我们要学个非常有用的unix命令:shift。我们知道,对于位置变量或命令行参数,其个数必须是确定的,或者当Shell 程序不知道其个数时,可以把所有参数一起赋值给变量$*。若用户要求Shell在不知道位置变量个数的情况下,还能逐个的把参数一一处理,也就是在$1后为$2,在$2后面为$3等。在 shift命令执行前变量$1的值在shift命令执行后就不可用了。示例如下:#测试shift命令(x_shift.sh)until $# -eq 0 doecho 第一个参数为: $1 参数个数为: $#shiftdone执行以上程序x_shift.sh:$./x_shift.sh 1 2 3 4结果显示如下:第一个参数为: 1 参数个数为: 3第一个参数为: 2 参数个数为: 2第一个参数为: 3 参数个数为: 1第一个参数为: 4 参数个数为: 0从上可知shift命令每执行一次,变量的个数($#)减一,而变量值 前一位,下面代码用until shift命令 所有命令行参数的 。#shift上 命令的 用(x_shift2.sh)if $# -eq 0 thenecho Usage:x_shift2.sh 参数exit 1fisum=0until $# -eq 0 dosum=expr $sum + $1shift doneecho sum is: $sum执行上 程序:$x_shift2.sh 10 20 15其显示结果为:45shift命令还有 一个重要用 ,Bsh定 了9个位置变量,从$1到$9, 不 用户在命令行只能使用9个参数, shift命令可以 于9个的参数。Shift命令一次 参数的个数 其所 的参数 定。例如当shell程序处理完前 个命令行参数后,可以使用shift 9命令把$10 到$1。在 了shift命令后,我们一起 ,Bsh程序中非常有用的for循环语句, 循环同上面 的while until循环不同,for语句中的循环是 执行 不 某个条件的真 定,定for循环是 的条件是参数中是 还有处理的参数。currency1试shell程序用户“完Shell程序中,不可的fi有fl , 时我们可以用Bsh中 的 ,该 fi显示执行的命令参数。用户可以set命令”-x 或在 Shell使用-x Shell 置成 。例如有下面代码ice_tx:if $# -eq 0 thenecho usage:sumints integer listexit 1fisum=0until $# -eq 0 dosum=expr $sum + $1shiftdoneecho $sum我们用 行:$sh -x ice_tx 2 3 4结果显示:+ 3 -eq 0 +sum=0+ 3 -eq 0 +expr 0+2+sum=2+shift+ 2 -eq 0 +expr 2+3+sum=5+shift+ 1 -eq 0 +expr 5+4+sum=9+ 0 -eq 0 +echo 99从上面可以 , 下Shell显示执行的每一条命令以该命令使用的变量替换后的参数值。一如ifthenuntil等显示。
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号