Linux基础教程教学课件作者清华PPT电子教案第9章.ppt

Linux基础教程教学课件作者清华PPT电子教案第9章.ppt

ID:51617630

大小:272.00 KB

页数:113页

时间:2020-03-26

Linux基础教程教学课件作者清华PPT电子教案第9章.ppt_第1页
Linux基础教程教学课件作者清华PPT电子教案第9章.ppt_第2页
Linux基础教程教学课件作者清华PPT电子教案第9章.ppt_第3页
Linux基础教程教学课件作者清华PPT电子教案第9章.ppt_第4页
Linux基础教程教学课件作者清华PPT电子教案第9章.ppt_第5页
资源描述:

《Linux基础教程教学课件作者清华PPT电子教案第9章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第9章shell编程9.1shell概述9.2shell的基本功能9.3shell启动及其命令9.4shell命令的集成9.5shell变量9.6shell的控制结构9.7shell的运行环境9.8shell应用实例9.9小结习题shell是一种命令语言,同时又是一种程序设计语言。shell的语言处理能力,使得用户能够方便地定义各种变量、参数,并使用各种控制语句编写复杂的命令程序完成多种工作。本章介绍shell、shell程序设计语言、shell的运行环境及shell程序的调试。9.1shell概述9.1.1什么是sh

2、ellshell是一种命令解释程序(命令解释器),shell解释用户输入的命令行,提交系统内核处理,并将结果返回给用户。与Linux命令一样都是实用程序,但两者又有区别。一旦用户注册到系统后,shell就被系统装入内存,并一直运行到用户退出系统之止;而一般命令仅当被调用时,才由系统装入内存执行。shell本身也是一种可编程的程序设计语言。用shell写的程序(shell脚本)相当于dos/windows下的批处理文件,它可以简单到只有一条命令,也可以复杂到包括大量循环、条件语句、数学运算、控制结构,也可以是介于两者之间

3、的程序。9.1.2shell程序语言的特点shell允许通过编程来完成复杂的功能处理,但其作为语言与高级语言相比较具有不同的特点:(1)shell是解释性的,多数高级语言是编译性的;(2)shell语言与高级语言处理的对象不同;(3)shell与系统有密切的关系;(4)shell易编写、调试、灵活性较强,但速度低;(5)shell作为命令级语言,命令组合功能很强。9.1.3shell的版本shell有两种主要语法类型:Bourneshell和Cshell,彼此不兼容。Bourneshell家族:shkshbashpsh

4、zsh;Cshell家族:cshtcsh。其中bash和zsh在不同程度上支持csh的语法。这里,我们再着重介绍一下bash的特点:(1)自动补全功能假设要输入的命令很长,或者命令后面要给的文件名很长。这个时候只要按一个Tab键,bash就会在可能的命令或文件名里面找寻匹配的命令,找到的话就会自动帮你补齐。(2)命令行编辑程序bash的命令行编辑是在提示符下,可对未执行的命令字符任意地修改。(3)命令历史(commandhistory)所谓的命令历史就是把曾经输入过的命令记录起来,方便日后的查询与使用。只要按向上键就可

5、以调出前一个命令,再按一次向上键就可以调出更前一个命令,依此类推,用向下键可以回到下个命令,所以用上、下键就可以选择以前输入过的命令。9.2shell的基本功能9.2.1程序的运行当用户输入一行命令后,shell负责解释、分析输入的内容,并且决定做什么,同时替系统内核删除命令行中不必要的信息。命令是一个可执行的Linux命令、程序、工具或shell脚本。例1:$ls-lfile1file2file3例2:$echo′WelcometoTsinghuaUniversity.′例3:$echoWelcometoTsingh

6、uaUniversity.注意:例2和例3的结果是完全一样的。9.2.2使用保留字和元字符shell有一些具有特殊意义的字(保留字),如在shell脚本中,像do、done、for、while等保留字控制循环操作,if、then、else等保留字进行条件控制。保留字随shell的不同而不同。在Linux系统里,有一组特殊意义字符,这就是所谓的元字符(通配符)。现在列出一些常用的通配符的意义,供参考。..上一层目录,与cd命令配合用得比较多.目前工作的目录*任意长度的字符?长度为一个的任意字符[..]括号内的一个字符\m

7、等于某个通配符,如*、?等[a-z]*小写字母开头的所有字符串\转义符号,用以解除特殊字符的特殊意义~用户目录;分隔符,当命令行有多个命令时,做分隔用$BourneShell的提示符,同时也作为shell语言的位置变量参数#做注释用

8、建立一个管道,使一命令的输出作为另一个命令的输入&将命令以后台方式执行>将命令的输出重导入文件中<将命令的输入流指定为由文件中加载,和>相反>>将命令的输出加在一个已经存在的文件后面{..}括号内的一个字符串例:$ls-xt*显示当前目录下以t打头的所有文件。9.2.3变量、文件名的替换1

9、.变量的替换shell允许对变量赋值。shell一旦在命令行中发现$变量名时,将在$变量名的位置上用以前赋给该变量的值替代$变量名。例:$myhome=/usr/app1$echo$myhome/usr/app1$ls-x$myhomefile1file2file3file42.文件名的替换shell在命令行中将文件名进行替换。事

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

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

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