网站大量收购独家精品文档,联系QQ:2885784924

《Linux操作系统原理与应用》课件_第9章.pptx

《Linux操作系统原理与应用》课件_第9章.pptx

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共102页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第9章 Shell程序设计;

9.1 Shell语言概述;

9.1.1 Shell语言的特点

与其他编程语言相比,Shell语言具有如下特点:

(1)Shell是一种解释性语言。

(2)Shell是基于字符串的语言。

(3)Shell是命令级语言。

需要说明的是,不同版本的Shell程序不完全兼容,差别可能是细微的,也可能是明显的。本章介绍的是bash的编程,它的应用较广泛,兼容性也很好。;

9.1.2 Shell程序

Shell程序是由一系列Shell命令构成的文本文件,也称为Shell脚本(script)。简单的Shell程序可以只是一个命令序列,高级Shell程序中还可以包含复杂的命令组合和控制结构。;

例9.1第1个Shell程序。;

9.1.3 Shell程序的建立与执行

Shell脚本是文本文件,因此可以用任何文本编辑器来编辑脚本。Shell脚本文件的名称没有限定的后缀名,通常不带后缀名或带“.sh”后缀名。

Shell脚本的执行方式主要有3种:

(1) 将脚本作为可执行文件直接执行:

这种方式是将脚本作为Shell的外部命令来执行的。;

(2)派生一个Shell执行脚本文件:

此命令将启动一个bash子进程,专用于执行参数指定的脚本。;

(3)让当前Shell执行脚本文件:

source命令(也可以写作“.”命令)是Shell的内部命令,功能是读取参数指定的文件,执行其内容。此命令就是让当前Shell执行脚本,而不是派生子Shell去执行。;

通常情况下,以上3种方式都可以使用,但需注意到可能存在的差异。如果脚本中有对Shell环境的修改操作,比如执行cd命令改变当前目录,则前2种执行方式不会对当前Shell产生影响,而第3种方式会直接作用于当前Shell。;

9.2 Shell特殊字符;

9.2.1 通配符

通配符用于描述命令行中的文件名参数。当Shell遇到带有通配符的文件名模式时,它将当前目录中的所有文件与该模式进行匹配,并用匹配的文件名替换命令行中的文件名模式。表9-1列出了常用的通配符。;;

例9.2通配符的匹配作用。;

9.2.2 输入/输出重定向与管道符

输入/输出重定向和管道符的作用是改变命???的输入/输出环境。当Shell在命令行中遇到输入/输出重定向或管道符时,它将对命令的标准输入/输出文件作相应的更改,然后再执行命令。表9-2列出了常用的输入/输出重定向与管道符。;;

1. 标准输入/输出重定向

“”是标准输入重定向符,它将标准输入stdin重定向到一个文件。“”是标准输出重定向符,它将标准输出重定向到一个文件。为了区分是哪种输出重定向,可以在符号前加一个文件描述符fd。stdout的fd是1,stderr的fd是2,所以“1”表示标准输出重定向,“2”表示标准错误输出重定向。未指定fd时,默认地表示是“1”。

例9.3将标准输入改为infile文件,标准输出改为outfile文件,标准错误输出改为errfile文件。;

2. 合并重定向与归并重定向

“”是标准输出合并重定向符,它将标准输出与标准错误输出合在一起重定向到一个文件。“”是标准输出归并重定向符,它将一种标准输出归并到另一种标准输出流中。符号的前后各用一个fd来表示归并的方式。“12”或“2”表示将stdout归并到stderr流中;“21”表示将stderr归并到stdout流中。;;

3. 附加重定向

“”是标准输出附加重定向符,它将标准输出或标准错误输出用追加的方式重定向到一个文件。“1”或“”表示stdout附加重定向;“2”表示stderr附加重定向。

例9.7在.bash_profile文件的尾部添加一行。;

4. here文档

“”是一种特殊的标准输入重定向机制,称为“here文档”(heredocument)。here文档的表示格式是“结束标记字符串”,它的作用是指示Shell将本命令行后面的输入行作为命令的标准输入传给命令,直到遇到结束标记字符串为止。;

例9.8here文档的使用。;

5. 管道

“|”是管道符,它将前一命令的标准输出作为后一命令的标准输入。“|?tee”是T型管道符,它将前一命令的标准输出存入一个文件中,并传递给后一命令作为标准输入。;

9.2.3 命令执行控制符

命令执行控制符用于控制命令的执行方式,指示Shell该如何执行命令。表9-3列出了常用的命令执行控制符。;

1. 顺序执行

“;”是顺序执行符,它将两个或多个命令组合在一个命令行中,指示Shell顺序执行这些命令。

例9.11转到上一级目录,显示目录的路径

文档评论(0)

kd8w + 关注
实名认证
内容提供者

kd8w

1亿VIP精品文档

相关文档