计算机科学与技术课程-操作系统接口编程.pptxVIP

计算机科学与技术课程-操作系统接口编程.pptx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

第2章操作系统接口——shell编程

主要内容1.Shell简介2.创建和执行Shell程序3.Shell程序设计基础?变量、条件测试、条件语句、函数…4.实例

1.Shell简介?Shell?用户和操作系统之间的接口?作为核外程序而存在

Shell:用户和操作系统之间的接口用户用户用户用户ShellShell:用户和操作系统之间的接口核外程序高级语言和实用程序系统调用文件子系统进程管理子系统进程间通信调度程序内核高速缓存存储管理字符设备块设备设备驱动程序硬件控制件硬

Shell:作为核外程序而存在csh其它程序内核bashX窗口系统

各种不同的Shell(1)bashshell:Linux操作系统的缺省shell,也是最经常使用的shell。(2)Cshell:语法类似编程用的C语言,因而在使用C语言的程序员中很流行。(3)Kornshell

Shell的双重角色?命令解释程序?Linux的开机启动过程;进程树?Shell的工作步骤?打印提示符;得到命令行;解析命令;查找文件;准备参数;执行命令?独立的程序设计语言解释器

2.创建和执行Shell程序?编写脚本文件?执行脚本文件

编写脚本文件?通过任意一种文字编辑器,比如nedit、kedit、emacs、vi来编写shell程序。?程序必须以下面的行开始(必须方在文件的第一行):#!/bin/bash符号#!用来告诉系统它后面的参数是用来执行该文件的程序。

3.Shell程序设计基础?变量?条件测试?条件语句?重复语句?函数?其它

3.1变量?用户变量?环境变量?参数变量和内部变量

环境变量环境变量$HOME$PATH$PS1$PS2$IFS说明当前用户的登陆目录以冒号分隔的用来搜索命令的目录清单命令行提示符,通常是”$”字符辅助提示符,用来提示后续输入,通常是””字符输入区分隔符。当shell读取输入数据时会把一组字符看成是单词之间的分隔符,通常是空格、制表符、换行符等。

参数变量和内部变量参数变量说明$#$0$1,$2,…$*传递到脚本程序的参数个数脚本程序的名字脚本程序的参数一个全体参数组成的清单,它是一个独立的变量,各个参数之间用环境变量IFS中的第一个字符分隔开“$*”的一种变体,它不使用IFS环境变量。$@Set:用来初始化命令行参数变量例如:set$(date)echo$*$4是星期几

3.2条件测试?test命令?testexpression或[expression]?test命令支持的条件测试?字符串比较?算术比较?与文件有关的条件测试?逻辑操作

算术比较算术比较expr1–eqexpr2expr1–neexpr2expr1–gtexpr2expr1–geexpr2expr1–ltexpr2expr1–leexpr2结果两个表达式相等则结果为真两个表达式不等则结果为真expr1大于expr2则结果为真expr1大于或等于expr2则结果为真expr1小于expr2则结果为真expr1小于或等于expr2则结果为真

与文件有关的条件测试文件条件测试-efile-dfile-ffile-sfile-rfile-wfile-xfile结果文件存在则结果为真文件是一个子目录则结果为真文件是一个普通文件则结果为真文件的长度不为零则结果为真文件可读则结果为真文件可写则结果为真文件可执行则结果为真

逻辑操作逻辑操作!exprexpr1–aexpr2expr1–oexpr2结果逻辑表达式求反两个逻辑表达式“And”(“与”)两个逻辑表达式“Or”(“或”)

3.3条件语句?if语句?case语句

if语句(1)?形式if[expression]thenstatementselif[expression]thenstatementselif…elsestatementsfi?紧凑形式?;(同一行上多个命令的分隔符)

实例分析(2)?#!/bin/bashecho“是早上吗?请回答yes或no.”readanswerif[“$answer”=“yes”]thenecho“早上好!”elif[“$answer”=“no”]thenecho“下午好!”elseecho“对不起,请输入yes或no”fi

实例分析——判断今天是不是星期四#!/bin/bashset$(date)echo$*iftest$4=星期四]thenecho“今天是星期四.”elseecho“今天不是星期四.”fi

case语句(1)?形式casestrinstr1|str2)statements;;str3|str4)statements;;*)state

文档评论(0)

192****6134 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档