- 1、本文档共52页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 Shell程序设计;9.8 Shell控制结构;9.8.1 条件与条件命令;9.8.2 分支控制命令;;if;if各部分功能;if语句必须以单词fi终止。在if语句中漏写fi是最一般的错误。
elif和else为可选项,如果语句中没有否则部分,那么就不需要elif和else部分。if语句可以有许多elif部分。最常用的if语句是if then fi结构。;简单if实例; 例: 判断参数1是否存在且是普通文件: if [ -f $1 ] then echo “$1 is an ordinary file.” else echo “$1 is not an ordinary file or not exists.” fi 例: 检查某用户是否登录,如果登录,则向他发即时信息: echo -n “ Enter User Name: ” read user if who | grep $user then echo “Don’t forget the meeting” | write $user else echo “$user has not logged.” fi;例子;运行结果;文件拷贝输出检查;检查拷贝文件;运行结果;测试目录创建结果;测试目录创建结果;运行结果;2. ?case命令;case的in取值;简单的case语句;运行结果;对匹配模式使用|;匹配模式的使用|; 例: 按时间显示问候语: hour= `date +%H` case $hour in 08|09|10|11|12) echo “Good Morning!” ;; 13|14|15|16|17) echo “Good Afternoon!” ;; 18|19|20|21|22) echo “Good Evening!” ;; *) echo “Hello!” ;; esac 该脚本先用date命令求出当前的小时数,然后根据这个数字按时间段显示不同的问候语。注意:模式中的“|”表示“或”的意思,用于将多个模式合并到同一个分支;“*”表示“任意”,表示当前面没有匹配的模式时执行此分支。;9.8.3 循环控制命令;1. ?for命令;执行过程;简单for;打印字符串列表;对for循环使用ls命令;运行结果:;统计文件行数;对for循环使用参数;例子;循环处理参数列表:;for循环嵌入;用for循环嵌套实现统计目录及子目录个数;2. ?while命令;执行过程;使用while循环读键盘输入;运行结果;用while循环从文件中读取数据;用while循环从文件中读取数据;运行结果;3. ?until命令;执行过程;例子1;9.8.4 退出循环命令;break example;continue example;控制流结构-小结
文档评论(0)