shell编程2 (2).ppt





《shell编程2 (2).ppt》由会员分享,可在线阅读,更多相关《shell编程2 (2).ppt(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Shell编程基础(补充)n如何建立和执行如何建立和执行Shell脚本脚本n理解理解Shell变量特性变量特性n掌握掌握Shell变量赋值方式变量赋值方式n介绍介绍shell编程中常用的命令和控制命令编程中常用的命令和控制命令6.4.1Shell脚本nShell程序是包含一个或多个程序是包含一个或多个Shell命令的集合。命令的集合。nShell程序通常放在文件中,称为程序通常放在文件中,称为Shell脚本。脚本。n建立建立Shell脚本文件同建立普通文件的方式一脚本文件同建立普通文件的方式一样,可以用样,可以用vi来建立。来建立。nShell程序由程序由Shell解释执行,方式简单。解释执行
2、,方式简单。n优点:优点:n确定步骤一次完成目标确定步骤一次完成目标n不用重复键入一系列命令不用重复键入一系列命令n简化自己和其他用户的操作简化自己和其他用户的操作6.4.1Shell脚本(续)n三种三种Shell文件执行方式:文件执行方式:(1)chmod命令(把文件的权限改成可读、可执行)n$chmod+x脚本文件名脚本文件名n(或chmod755脚本文件名脚本文件名)n$脚本文件名及其参数脚本文件名及其参数(2)直接使用直接使用Shell命命令来执行令来执行n$sh脚本文件名及其参数脚本文件名及其参数(3)使用使用bash内部命令内部命令“source”或或“.”n$source脚本文件
3、名及其参数脚本文件名及其参数n$.脚本文件名及其参数脚本文件名及其参数6.4.1Shell脚本(例)n$cathello#Filename:hello(#后的字符串为注解后的字符串为注解)echoHelloworld!n第一种:第一种:将将hello这个文件的权限设定为可执行。这个文件的权限设定为可执行。$chmod755hello或或chmodu+xhello$./hellohelloworld!6.4.1Shell脚本(例)n第二种第二种:直接使用直接使用sh命命令来执行。令来执行。$shhello或或$bashhello helloworld!helloworld!n第三种第三种:使用使
4、用bash内部命令内部命令“source”或或“.”$sourcehello或或$.hello helloworldhelloworld6.4.2Shell变量n用户自定义变量用户自定义变量n位置变量位置变量n环境变量环境变量n预定义的特殊变量预定义的特殊变量用户自定义变量用户自定义变量n在在Shell脚本程序内部定义的脚本程序内部定义的Shell变量变量(临时变量临时变量),随着脚本程序的执行完毕而自动消失。随着脚本程序的执行完毕而自动消失。n临时变量包括用户定义的变量和位置参数。临时变量包括用户定义的变量和位置参数。nShell变量没有数据类型限制,也不需要在赋值前变量没有数据类型限制,也
5、不需要在赋值前定义。定义。用户自定义变量用户自定义变量(续)用户自定义变量:用户自定义变量:n变量命名变量命名 以字母或下划线开头以字母或下划线开头,包括字母、数字、和下划线。包括字母、数字、和下划线。n变量赋值变量赋值变量名变量名=变量值变量值 (等号前后不可有空格)(等号前后不可有空格)例:例:a=a=“beijingbeijing”(可以使用可以使用read read 命令来从标准输命令来从标准输入读取数据,并赋值给变量,还可由命令替换的输出入读取数据,并赋值给变量,还可由命令替换的输出来赋值。)来赋值。)n变量引用变量引用在变量名之前加在变量名之前加$,$,表示变量的值表示变量的值.例
6、:例:echo$a (echo$a (显示变量显示变量a a的值的值)位置变量n出现在命令行上的位置确定的参数称为位置参数。出现在命令行上的位置确定的参数称为位置参数。$命令命令参数参数1参数参数2参数参数3n当当Shell解释一个命令时,它将变量与命令行中的每一项解释一个命令时,它将变量与命令行中的每一项关联,关联的变量称为位置变量,它们是:关联,关联的变量称为位置变量,它们是:0,1,2,9。这这10个位置变量对应命令行上各项的位位置变量对应命令行上各项的位置,命令名置,命令名(或或Shell脚本名脚本名)是是0,命令的第一个参数是命令的第一个参数是1,依依次类推。次类推。n当当命令行上的
7、参数多于命令行上的参数多于9个时,需要用个时,需要用shift命令移动位置命令移动位置变量变量,每执行一次每执行一次shift命令命令,变量变量0不变不变,从从1开始位置变量开始位置变量左移一位左移一位,即把即把2,3,49的值分别赋值给的值分别赋值给1,2,39。预定义的特殊变量预定义的特殊变量n这类变量具有特殊的含义这类变量具有特殊的含义,它们的值由它们的值由Shell根据实际情况来设根据实际情况来设置置,用户不能重新设置。用户不能重新设置。n$#实际位置参数个数实际位置参数个数(不包括不包括Shell脚本名脚本名),通常在通常在程序中用来检查执行时带入的参数个数是否正确程序中用来检查执行
8、时带入的参数个数是否正确n$*命令行中的所有位置参数的字符串命令行中的所有位置参数的字符串n$与与$*相似,但值不同相似,但值不同.例如:对于位置参数例如:对于位置参数F1F2F3 “$*”表示表示“F1 F2 F3F1 F2 F3”而而“$”表示表示“F1F1”“F2F2”“F3F3”n$?$?表示最后一条命令执行后的退出状态(返回值),表示最后一条命令执行后的退出状态(返回值),为十进制数。一般命令的执行成功返回值为为十进制数。一般命令的执行成功返回值为0。例例1$catsh_prgecho$#echo$*echo$1$2$3shift2echo$#echo$*echo$1$2$3$sh_
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- shell编程2 2 shell 编程

限制150内