Linux操作系统第11章.pdfVIP

  • 3
  • 0
  • 约1.54万字
  • 约 32页
  • 2025-12-27 发布于陕西
  • 举报

单元11Shell程序设计

Shell是linux为方便用户访问核心服务而提供的命令接口。大多数情况下,用户

要使用linux提供的各种服务必须通过shell方可进行。本单元将介绍linux系统下shell

的功能和特点,及在linux系统下使用shell进行编程的方法。

知识入门

1.Shell的作用

shell是一个特殊的应用程序,它介于操作系统内核与用户之间,负责接收用户输入的操作指

令(命令)并进行解释,将需要执行的操作传递给内核执行。因此,shell程序在系统中充当

了一个“命令解释器”的角色。例如,微软公司的windows10操作系统中的“cmd.Exe”就属

于shell程序。

2.Shell的类型

在UNIX/linux操作系统中,能够使用的shell程序有很多种,功能也比windows系统中的“cmd。

exe”要强大的多。其中,最常见的Shell有四种,分别为Bash、zsh、tcsh和ksh。其中,这几

种Shell的功能在前面章节已经有详细介绍。

3.Shell环境的切换

为了提高系统的兼容性,在Linux系统中一般会提供对各种常见shell程序的支持。通过配置文

件“/etc/shells”可以查看系统所支持的Shell程序的路径。查看UbuntuLinux系统中能够使用

的SHELL程序列表。

4.Shell脚本的概念

凡是使用shell编程语言编写的程序文件都可以称为shell脚本。通俗点说,只要将一些linux命

令行按顺序保存到一个文本文件中,并给与这个文件可执行权限,那么这个文件就可以称为

shell脚本。当然,shell脚本是为了完成一定的管理任务才创建的,因此脚本文件中的各条命

令并不是杂乱无章随便放置的,这就需要用户来进行组织和设计了。

与编译型的高级编程语言不同,shell脚本程序是属于解释执行的,并不需要进行特别编译,

只需要有相应的shell命令解释器即可。在linux系统中,存在有大量的shell脚本文件,很多脚

本程序是LINUX系统中不可缺少的组成部分,功能非常重要。例如,在“/etc/init.d”目录中

存在着数量相当多的系统服务启动程序,这些程序全都是Shell脚本文件,可以使用file命令查

看这些文件的类型。

知识入门

5.编写SHELL脚本文本步骤

编写一个完整可运行的SHELL脚本需要经过以下步骤。

(1)建立包含可执行语句的文本文件

使用文本编辑器程序(如VI)创建脚本文件,文件名中可以使用扩展名(如“.SH”),也可

以不使用扩展名,并没有强制的要求。脚本中可能包括的内容如下所示:

运行环境设置:通常位于文件的第一行,用于指定使用哪一个SHELL程序进行解释。设置时

以“#!”开始,后面紧跟上指定SHELL程序的完整路径,如“#!/BIN/BASH”。

注释行:在脚本文件中,除了以“#!”开头的SHELL环境设置行以外,其他以“#”符号开头

的内容将被视为注释信息,执行脚本时将予以忽略。编写脚本程序时,添加必要的注释语句

是一个良好的习惯,这样将大大增强脚本文件的易读性,方便在不同时间、不同用户间交流

使用。

可执行语句:可执行语句是SHELL脚本程序中最重要的组成部分。在命令行操作界面中可以

执行的命令都可以写入到脚本当中,程序运行时默认情况下将会按照顺序依次解释执行。除

此以外,还可以添加一些程序结构语句,用于灵活控制执行过程,提供程序执行效率。

在上述各组成部分中,只有可执行语句是必不可少的,否则就不叫程序了。当缺省运行环境

设置时,会自动由当前加载该脚本的SHELL解释器负责解释执行。尽管如此,还是建议明确

指定SHELL环境,以保证脚本程序的完整性和可移植性。

(2)为脚本添加可执行权限。

编写并保存好脚本文件以后,需要执行该程序才能看到操作结果。但是刚刚建立的脚本文件

通常不具有可执行属性,因此还得使用CHMOD命令为文件添加可执行权限(X)。

知识入门

6.执行SHELL脚本

在SHELL命令行环境中可以有多种方式执行SHELL脚本,下面分别介绍。

(1)直接执行带“X”权限的脚本文件

为脚本文件设置了可执行属性后,在SHELL命令行中可以直接通过脚本文件的路径执行脚本

程序,这也是最常用的一种方式。

(2)使用SHELL解释器程序执行脚本

这种方

文档评论(0)

1亿VIP精品文档

相关文档