第5章LinuxShell编程本章教学目的及要求掌握shell编程的一般方法。了解shell高级编程技术及shell脚本的调试方法。Shell是什么?Shell原意为外壳,用来形容物体外部的架构,Linux系统的Shell作为操作系统的外壳,保护其内部的核(Kernel)。5.1Shell简介Shell是什么具体来讲,Linux系统的Shell作为操作系统的外壳,为用户提供使用操作系统的接口。它是命令语言、命令解释程序及程序设计语言的统称。1.Shell可称为命令解释器:负责用户和操作系统之间的沟通,把用户下达的命令解释给系统去执行,并将系统传回的信息再次解释给用户,所以,它拥有自己内建的Shell命令集,也能被系统中其他应用程序调用。2.Shell还是一种高级程序设计语言:它有变量、关键字,有各种控制语句,如if、case、while、for等语句,有自己的语法结构。利用Shell程序设计语言可以编写出功能强大的代码程序。Shell解析命令过程Shell命令的两种形式:在Shell中,有一些命令(比如改变工作目录命令cd)是包含在Shell内部的。还有一些命令(例如拷贝命令cp和移动命令rm)是存在于文件系统中某个目录下的单独的程序,如/bin目录中。对用户而言,不必关心一个命令是建立在Shell内部还是一个单独的程序。–内部命令:.、alias、bg、cd、continue、echo、exec、exit、fg、jobs、pwd、set、shift、test、time、umask、unset和wait。–外部命令:grep、more、cat、mkidr、rmdir、ls、sort、ftp、telnet、lp和psShell接到用户输入的命令后首先检查命令是否是内部命令,若不是再检查是否是一个应用程序。然后,Shell在搜索路径里寻找这些应用程序(搜索路径就是一个能找到可执行程序的目录列表)。如果键入的命令不是一个内部命令并且在路径里没有找到这个可执行文件,将会显示一条错误信息。如果能够成功找到命令,该内部命令或应用程序将被系统传送给Linux内核。Shell解析命令过程常用的Shell1.Shell种类Linux中的Shell有多种类型,其中最常见的是BourneShell(sh)、CShell(csh)和KornShell(ksh)。三种Shell各有优缺点。BourneShell是Unix最初始的Shell,并且在每种Unix上都可以使用。BourneShell在Shell编程方面相当优秀,但在处理与用户的交互方面做得不如其他几种Shell。1.Shell种类Linux中的Shell有多种类型,其中最常见的是BourneShell(sh)、CShell(csh)和KornShell(ksh)。三种Shell各有优缺点。BourneShellCshell是一种比Bourneshell更适于编程的shell,它...