操作系统实验课件all.ppt

  1. 1、本文档共256页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 成都信息工程学院 * 9、循环语句 (1) for循环语句 for var in word1 word2 word3 … do Unix-command ……… last-Unix-command done 提示 变量var的可能取值为word1 word2 …必须一一列出;若省略in及其后的取值表,则相当于有 in $*,系统对每一个位置变量执行一次命令表;在取值列表中可采用通配符,如:*可代表当前目录中所有的文件。 * 成都信息工程学院 * 例1: #!/bin/bash for LTR in a b c d do echo $LTR done 例2: #!/bin/bash if [ $# -eq 0 ] then echo Usage:$0 args ... else sum=0 for I in $* do sum=`expr $sum + $I` done echo sum is: $sum fi * 成都信息工程学院 * (2) while循环 while [ condition ] do commands ……… Last-command done * 成都信息工程学院 * 例: #!/bin/bash num=0 while [ $num -lt 10 ] do echo -n $num num=`expr $num + 1` done echo echo Loop exit. * 成都信息工程学院 * (3) until循环 until [ condition ] do commands …… last-command done 提示 如果在第一次执行时,循环条件就为真,则循环体可能永远不会执行。 * 成都信息工程学院 * 例:查看指定的用户是否登录到系统上。如果没有,则在他登录时进行报告 #!/bin/bash until who | grep $1 /dev/null do sleep 15 done echo -e \a$1 is logged on. exit 0 提示 \a表示一次嗡鸣 * 成都信息工程学院 * 10、改变循环(break和continue) break和continue语句被用来改变for、while和until循环的执行,其机制和c语言中相同 * 成都信息工程学院 * 中断循环指令例: I=0 while [ $I -lt 10 ] do I=`expr $I + 1` if [ $I -eq 3 ] then continue fi if [ $I -eq 7 ] then break fi echo $I done 程序最终输出结果是多少? * 成都信息工程学院 * 11、shell常用内部命令 read [var] 从标准输入读取一行,保存到变量var中 例1:$read choice 例2:$read var1 var2 var3 exit [n] 终止脚本返回命令行,退出状态为n,其中n是0到255的整数 例:exit 1 return [n] 退出函数,其退出状态为n * 成都信息工程学院 * 12、shell 程序调试 shell程序是一种解释执行语言,不需要进行编译来形成可执行文件。执行是逐行完成的,当程序中语句有语法错误时,对未执行到的语句,系统并不进行提示,如何找出程序的错误? 可以使用shell命令的调试选项 * 成都信息工程学院 * Bash的调试选项 命令 选项 功能 bash -x name 回显 在变量替换之后、执行命令之前,显示脚本的每一行 bash -v name 详细 在执行之前,按输入的原样打印脚本中各行 bash -n name 不执行 解释但不执行命令(语法检查) set -x 打开回显 跟踪脚本的执行 set +x 关闭回显 关闭跟踪功能 * 成都信息工程学院 * 13、程序实例 例1:制作一个菜单,并实现如下菜单功能 (1)显示当前日期 (2)显示系统在线用户 (3)退出 代码如下: #!/bin/bash clear while true do * 成都信息工程学院 *

文档评论(0)

勤劳的小厮 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档