已阅读5页,还剩69页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录,概述Shell变量Shell控制结构交互式shell,概述,Shell介绍,概述,Shell在操作系统的位置,概述,基本上,替我们工作的是硬件,而控制硬件的是内核shell使用者那是利用shell控制一下kernel提供的工具来操作硬件替我们正确工作。在进一步来说,由于kernel听不懂人类语言,而人类也没有版本直接记得kernel的语言,所以两者的沟通就有shell支持!Shell类似windowns的dos命令,概述,Shell的种类,概述,概述,上面介绍shell基本知识,下面介绍shell编写的基本知识。Shell编程的总体划分如下所示:,变量,变量大家都比较熟悉,在shell编程中也可以定义变量,变量的定义、赋值等属性与c语言中的变量的属性有很大的不同。下面按照变量的种类分别介绍这些变量特点与使用方法,环境变量,环境变量用于所有用户进程。这些变量在操作系统启动时已经设置好的。建议不要修改这些环境变量。对环境变量可以进行如下操作查看环境变量设置环境变量取消环境变量,环境变量,查看环境变量查看环境变量包括查看具体的环境变量与查看全部环境变量查看操作系统下的所有的环境变量在shell执行命令:env如下图所示:,环境变量,查看具体的环境在shell执行:echo“$环境变量名称”例如查看环境变量PATH的值,执行命令:echo“$PATH”,环境变量,设置环境变量用户可以在shell编程中设置环境变量,方式如下:变量名=值export变量名,环境变量,取消环境变量环境变量设置后可以取消。方式如下unset环境变量名称在下面的章节中举例都是test.sh在test.sh定义环境变量,在test1.sh打印环境变量,在test.sh中删除环境变量,环境变量,Test.sh中内容如下:,Test1.sh中内容如下:,环境变量,执行结果:,本地变量,本地变量是在shell脚本中定义的变量,此变量的作用域为整个shell脚本,故在shell脚本中不要定义重名的变量。在本地变量中介绍如下方面变量赋值变量组合变量删除,本地变量,变量赋值变量的赋值有如下种类直接赋值shell命令执行结果赋值数值计算结果赋值,本地变量,直接赋值定义时赋值TestPar=1shell命令执行结果赋值变量名=shell命令例如将当前路径赋给变量CurDirCurDir=pwd,本地变量,数值计算结果赋值对于正式的数值可以进行运算,将运算结果赋值给变量。数值计算的命令为:expr例如:ParNum=10ParNum=expr$ParNum/2注意:变量赋值是=两边不能有空格,本地变量,变量组合多个变量可以组合成一个变量。例如ParUinte1=/user/ParUinte2=version/ParUinte3=$ParUinte1$ParUinte2则ParUinte3的值为/user/version/,本地变量,变量删除使用unset命令将变量删除。unset变量名注:变量名前没有$,本地变量,上面讲述的内容写到shell脚本中如下所示:,执行结果如下:,特殊变量,特殊变量是shell中定义的特殊变量,如下所示:,特殊变量,特殊变量,对上面的特殊变量通过一个具体的实例来查看,如下所示:,执行脚本:./test.sh123执行结果如下:,Shell控制结构,在shell控制结构中主要有如下几个部分条件判断循环处理函数调用,条件判断,在讲解判断条件前,先介绍判断条件有那些种类存在性判断字符串判断数字比较,条件判断,存在性判断一般是对文件的存在性进行判断,文件存在性判断如下所示,条件判断,字符串判断对字符串的判断主要有如下种类:,条件判断,数字比较对数字的比较判断有如下种类:,条件判断,对上面的条件判断请参考如下用例,条件判断,执行结果如下:,条件判断,判断条件经过上面的讲解,大家都已经了解,下面讲述判断条件的最基本使用。,if条件1then命令1elif条件2then命令2else命令3fi,if条件1;then命令1elif条件2;then命令2else命令3fi,条件判断,最基本的命令如下:,条件判断,上述命令需要注意如下事项:if与中有空格与2有空格比较符前后有空格3与有空格if一定以fi结束,条件判断,上面讲述的是if语句下面讲解下case语句的用法,如下所示,条件判断,通过一个具体的实例查看case的用法,条件判断,上述命令需要注意如下事项:在case选项中一般有下面选项*)这个类似c语言case中default选项Case一定已esac结束。esac是case的逆序写发,循环处理,循环处理中有如下几种类型for循环until循环while循环,循环处理,for循环For循环一个格式如下所示:,循环处理,上述中in列表一般有如下种类列举内容执行命令内容,循环处理,列举内容for循环执行in后面列举内容,循环处理,执行命令内容for循环执行in后面为命令执行结果打印当前目录下的所有文件,如下所示,执行结果,循环处理,上面讲述for循环常用的几种格式,for循环可以嵌套使用如下所示:,循环处理,执行结果如下所示:,循环处理,until循环until使用方法如下untile条件do命令1done,循环处理,Until使用方法如下所示:,循环处理,Untile的条件为假时才执行下面语句。与平常使用的判断条件不相同。在上面示例中until后面的条件:变量Loop大于5条件为假即小于等于5时执行:,循环处理,执行结果:,循环处理,while循环while的使用方法与until类似,如下所示:,循环处理,while使用方法如下所示:,循环处理,While条件为真时执行后面的命令。在上面示例中while后面的条件时:变量Loop小于5条件为真时执行:,循环处理,执行结果:,循环处理,在循环中有两个关键字比较重要:breakcontinue这两个关键字与c语言中的含义相同。break:跳出循环continue:跳出本次循环如下所示:,循环处理,执行结果,函数调用,在shell脚本中可以编写函数,并且对含进行调用。本章包括如下内容:函数的定义函数的调用函数的传参函数的返回值,函数调用,函数的定义在调用函数前需要先定义函数,函数的定义一定在函数的使用前。函数定义的格式如下:,函数调用,函数定义如下所示:,函数调用,在定义函数时需要注意下面几点要有返回值用定义在使用前函数名与变量名不能重复,函数调用,函数的调用函数定义后在使用的地方可以直接调用,调用时直接写函数名即可。注意:函数名后不要带()如下所示:,函数调用,如下所示:,函数调用,函数的传参在调用函数时可以进行传递参数,传递参数的方式与shell脚本传递参数的方式相同格式如下:函数名参数1参数2,函数调用,在函数中可以使用$1$2$9获取入参如图所示:,函数调用,执行结果:,函数调用,函数的返回值调用完函数后建议对函数的返回值进行判断以确定函数调用是否成功。对函数返回值一般有如下约定:0:表示函数调用成功其他:函数调用失败,函数调用,函数的返回值使用特殊变量$?进行判断如图所示:,交互式shell,上面讲述的是常用的shell,这些shell命令执行时不需要用户进行确认或输入。有些shell命令需要用户进行输入。例如:修改用户的密码如下所示,交互式shell,碰到上述情况校验使用交互式shell,交换式shell格式如下:expect-c“spawn操作命令
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年亳州利辛县公开选聘城市社区专职工作者120名备考题库含答案详解(新)
- 2026中国农业银行浙江省分行校园招聘925人备考题库及答案详解(全优)
- 2025四川巴中南江创展人力资源有限公司招聘编外警务辅助人员2人备考题库含答案详解(培优a卷)
- 2025广东汕尾市城区招聘网格+警格辅助人员30人备考题库附答案详解(夺分金卷)
- 2026杭州银行嘉兴分行秋季校园招聘备考题库含答案详解(满分必刷)
- 肌注护理质量改进措施
- 减速器课程设计封面
- 2026福建省面向吉林大学选调生选拔工作备考题库附答案详解(轻巧夺冠)
- 城市生存课程设计
- 引流管堵塞处理技巧
- 斯坦福大学人生设计课 (美比尔·博内特 戴夫·伊万斯)
- Unit2SectionA1a-2d教学设计2023-2024学年人教版英语八年级上册
- DL∕T 1396-2014 水电建设项目文件收集与档案整 理规范
- 高压电工作业第八章继电保护与二次系统
- 长汀职专德育手册
- DL-T5181-2017水电水利工程锚喷支护施工规范
- MOOC 药物代谢动力学-中国药科大学 中国大学慕课答案
- 网络机房日巡检记录表
- MOOC 创新创业管理-北京理工大学 中国大学慕课答案
- 华为VRRP原理和配置课件
- 第三者破坏家庭起诉书范文
评论
0/150
提交评论