- 1、本文档共47页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ch05shell编程
Shell编程 本章目标 通过对本章的学习,了解Shell的主要特点、类型,掌握Shell脚本的建立和执行,能使用vi编辑器编写简单的代码程序,处理一些简单的实际问题。 教学要求 知识要点能力要求相关知识Shell的主要特点、类型、建立和执行了解Shell的主要特点、类型,掌握Shell脚本的建立和执行UNIX操作系统Bash中变量的分类、定义及引用掌握Bash Shell中变量的分类、定义及引用方法C语言的变量各种控制语句的功能及使用掌握代码程序表达式、控制语句的使用方法其他系统的脚本语言 引例 在Linux系统中,虽然有各种各样的图形化接口工具,但是Shell仍然是一个非常灵活的工具。Shell不仅仅是命令的收集,而且是一门非常棒的编程语言,可以通过使用Shell使大量的任务自动化。Shell特别擅长系统管理任务,主机管理的上乘之道就在于尽量让计算机去完成所有的琐事,要达到这个境界,管理者必须具备相当程度的Shell操控能力与Shell程序设计能力。 本章主要介绍Shell的主要特点、类型,由简入繁、循序渐进,建立扎实的Bash Shell程序设计基础,充分展示Bash Shell程序设计的技巧,带领读者学习如何设计自动化程序,解决问题,增进工作效率,快速提升主机管理的能力。 5.1 Shell概述 5.1.1 Shell简介 Shell为用户提供使用操作系统的接口,它是命令语言、命令解释程序及程序设计语言的统称,负责用户和操作系统之间的沟通,把用户下达的命令解释给系统去执行,并将系统传回的信息再次解释给用户,所以Shell也可称为命令解释器。 Shell还是一种高级程序设计语言,它有变量、关键字、各种控制语句,如if、case、while、for等,还有自己的语法结构。利用Shell程序设计语言可以编写出功能强大的代码程序,可以把相关的Linux命令有机地组合在一起,大大提高编程效率,利用Linux系统的开放性能,就能设计出适合自己要求的程序。 有一些命令(如改变工作目录的命令cd)是包含在Shell内部的,还有一些命令(如复制命令cp和移动命令rm)是存在于文件系统中某个目录下的单独的程序。对用户而言,不必关心一个命令是建立在Shell内部还是一个单独的程序。Shell接到用户输入的命令后首先检查命令是否是内部命令,若不是再检查是否是一个应用程序;然后,Shell在有哪些信誉好的足球投注网站路径里寻找这些应用程序(有哪些信誉好的足球投注网站路径就是一个能找到可执行程序的目录列表),如果输入的命令不是一个内部命令并且在路径里没有找到这个可执行文件,将会显示一条错误信息;如果能够成功找到命令,该内部命令或应用程序将被系统传送给Linux系统内核。 5.1.2 常用的Shell 1.??Shell种类 Linux中的Shell有多种类型,其中最常见的是Bourne Shell(sh)、C Shell(csh)和Korn Shell(ksh)。3种Shell各有优缺点,Bourne Shell是UNIX最初始的Shell,并且在每种UNIX上都可以使用,Bourne Shell在编程方面相当优秀,但在处理与用户的交互方面做得不如其他几种Shell。Bash(Bourne Again Shell)是Bourne Shell的扩展,与Bourne Shell完全向下兼容,并且增加了许多特性,它还包含了很多C Shell和Korn Shell中的优点,有灵活和强大的编程接口,同时又有很友好的用户界面。 2.??Bash Bash是大多数Linux系统的默认Shell。Bash有以下优点。 (1) 补全命令。在Bash命令提示符下输入命令或程序名时,若没有输全命令或程序名,按Tab键,Bash将自动补全命令或程序名。 (2) 通配符。在Bash下可以使用通配符“*”和“?”。“*”可以替代多个字符,而“?”则替代一个字符。 (3) 历史命令。Bash能自动跟踪用户每次输入的命令,并把输入的命令保存在历史列表缓冲区中。 (4) 别名。在Bash下,可用alias和unalias命令给命令或可执行程序起别名和删除别名,这样就可以用自己习惯的方式输入命令。 (5) 输入/输出重定向。输入重定向用于改变命令的输入,输出重定向用于改变命令的输出。输出重定向更为常用,经常用于将命令的结果输入到文件中,而不是屏幕上。输入重定向的命令是“”,输出重定向的命令是“”。输入/输出重定向的功能和用法与DOS/Windows系统完全相同。 例1:输入重定向。 $ wc/etc/passwd 20 23 726 /etc/passwd 分别显示行数、字数、字节数和文件名。 例2:输出重定向。 $ ls dir.out
文档评论(0)