- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
shell编程与文本编辑
8.1 shell编程
8.1.1 shell基础
shell是用C语言写的一个程序,它虽然与系统在一起并且作为系统的一部分提供给用户,但它不是操作系统的核心部分,它属于普通用户程序, 是命令的解释程序。
8.1.1.1 shell命令及其表示方式
在shell程序中,一个命令行是由一系列的参量(argument)组成,参量与参数之间用空格或制表符隔开。第一个参量(位置计数为0)即是命令的名字。
命令行的一般格式为:参数0 参数1 参数2 ……
例如:cat file1 file2 file3
在这个命令行中共有四个参量,第一个参数cat是命令的名字,其余三个是文件名,其意思是打开文件file1、file2和file3。
如果命令行的第一个参量(即命令名的位置)是一个文件,而这个文件是可执行的,那么这个可执行的文件:
A.可能是一个已经被编译过的程序,在这种情况下,直接运行这个程序即可
B.如果文件被标记为可执行的,但它不是被编译这的程序,那么就认为它是一
个shell过程。也就是说,它是一个包括了一些shell命令行的普通文本文
件。遇到这种情况,shell读这个文件,并且执行包含在文件中的一些shell
命令。
8.1.1.2 shell程序所用的命令路径
通常,shell从文件系统的三个不同的地方查找所用的命令,查找的顺序为:
当前目录、目录/bin、目录/usr/bin。这样的机制,给多个用户执行的公共命令提供发一种方便的方法。
8.1.1.3 文件名匹配符
shell程序使用了三种匹配符:
(1)* 星号:匹配任何字符串,包括空字符,但不含符号“.”
例如:/u/data/* 表示目录/u/data下所有的文件
/u/data/*ab 表示目录/u/data下所有以ab字母结尾的文件
/u/data/*.c 表示目录/u/data下所有以.c结尾的文件
(2)? 问号:匹配一个任何字符或数值, 但不含符号“.”
例如:/u/data/? 表示目录/u/data下只含一个字母的文件
/u/data/f?b 表示目录/u/data下以f字母开头、以b字母结尾而且只含
三个字符的文件
(3)[…] :在方括号中,可以是任何字符或数值序列。
A.它可以匹配方括号中所包含的任何一个字符。
例如:[abdf] 等于或a、或b、或d、或f
B。在方括号里面,由小横杠隔开的一对字符或数值,可以与这对字符或数值给
出的范围中任意字符或数值匹配。
例如:[a-d] 等于abcd
[1-6] 等于123456
C.在方括号里面,字符“!”表示不包含。
例如:[!A-Z] 等于不含从A至Z的大写字母
注意:目录名字中不应包含下列字符中的任何一个:* ?与 [ ],如果在目录中使用了这些字符,那么在按照指定字符串查找与之相匹配的名字时,可能出现无限循环。
8.1.1.4使用引号
对shell来说,引号的作用是删除特殊字符的特殊含义。Shell程序中的特殊字符有: * ? [ ] # $
要使这些字符失去在shell中的特殊意义,需要某些形式的引用。
引用方式有三种:
(1)单引号“′”把特殊字符括起来。
在单引号中引用的全部字符,都将失去它的特殊意义。
例1:在键盘上输入下列信息:
aaa=testing
echo `Parameter \$aaa is $aaa`
将显示结果为:Parameter $aaa is $aaa
例2:在键盘上输入下列信息
aaa=testing
echo `Parameter \$aaa is` $aaa
将显示结果为:Parameter $aaa is testing
结果表明:单引号中引用的字符$,已经失去了它的特殊意义
(2)使用双引号““”把特殊字符括起来。
在双引号中引用的全部字符,除特殊意义的字符$、$(command)、\、`、”外,其它字符都将失去它的特殊意义。
例3:在键盘上输入下列信息
您可能关注的文档
最近下载
- 北师大版-数学-五年级上册-《多边形的面积》单元分析.doc VIP
- 新高考背景下历史课程教学改革探索教学研究课题报告.docx
- 2023-2024学年四川省成都市锦江区八年级(下)期末数学试卷(1).doc VIP
- DL T 1144-2012《火电工程项目质量管理规程》.pdf VIP
- 教科版六年级科学上册全册必背知识点知识清单.pdf VIP
- 《孩子是春天的另一种姿势》阅读练习及答案.doc VIP
- 2022-2023学年四川省成都市锦江区八年级(上)期末数学试卷.docx VIP
- T_CVMA 224-2025 猫传染性腹膜炎诊断规程.pdf VIP
- T_CVMA 232-2025 猪星状病毒五型荧光PCR检测方法.docx VIP
- T_CVMA 252-2025 马四肢X线及超声操作规范.pdf VIP
文档评论(0)