实验9 Shell编程.ppt
《实验9 Shell编程.ppt》由会员分享,可在线阅读,更多相关《实验9 Shell编程.ppt(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、实验实验9Shell编程编程1湖南第一师范学院湖南第一师范学院一.实验目的:1.了解了解UNIXshell的作用和主要分的作用和主要分类。2.了解了解Bourneshell(简称称sh)的一般的一般语法法规则。3.能能编写写简单的的shell程序程序2湖南第一师范学院湖南第一师范学院二.实验内容:1.Shell变量的定义及其使用。变量的定义及其使用。2.位置参数和环境变量。位置参数和环境变量。3.Shell中的特殊字符。中的特殊字符。4.一般控制结构。一般控制结构。3湖南第一师范学院湖南第一师范学院三、实验步骤一、一、Shell变量:量:Shell有两种有两种变量:量:环境境变量和量和临时变量
2、。在量。在Shell脚本脚本中中临时变量又分量又分为两两类:用:用户定定义的的变量和位置参数。量和位置参数。1.用用户定定义的的变量量用用户定定义的的变量是最普遍的量是最普遍的Shell变量,量,变量名是以字母量名是以字母或下化或下化线打打头的字母、数字和下的字母、数字和下线符序列,并且大小写字母意符序列,并且大小写字母意义不同。不同。变量名的量名的长度不度不受制。定受制。定义变量并量并赋值的一般形式是:的一般形式是:变量名量名=字符串字符串例如,例如,myfile=/usr/meng/ff/m1.c在程序中使用在程序中使用变量的量的值时,要在,要在变量名前面加上一个符量名前面加上一个符号号“
3、$”。这个符号告个符号告诉Shell,要,要读取取该变量的量的值。4湖南第一师范学院湖南第一师范学院(1)定定义并并显示示变量的量的值$dir=/usr/mengqc/file1$echo$dir/usr/mengqc/file1$echodirdir$today=Sunday$echo$today$TodaySunday$str=HapyNewYear!$echoWishYou$strWishYouHappyNewYear!5湖南第一师范学院湖南第一师范学院2)read命令命令作作为交互式交互式输入手段,可以利用入手段,可以利用read命令由命令由标准准输入(即入(即键盘)上上读取数据,然后
4、取数据,然后赋给指指定的定的变量。其一般格式是:量。其一般格式是:read变量量1变量量2.例如:例如:$readname-输入入read命令命令mengqc-输入入name的的值$echoYourNameis$name.YourNameismengqc-显示示输出的出的结果果$readabc-read命令有三个参数命令有三个参数crtvucnedu-输入三个字符串,中入三个字符串,中间以空格隔开以空格隔开$echoEmail:$a.$c.$bEmail:-显示示输出出结果果6湖南第一师范学院湖南第一师范学院利用利用read命令可交互式的命令可交互式的为变量两量两赋值。输入数据入数据时,数据,
5、数据间以空格或制表符作以空格或制表符作为分隔符分隔符。注意以下情况:。注意以下情况:*若若变量个数与量个数与给定数据个数相同,定数据个数相同,则依次依次对应赋值,如上面例子所示。如上面例子所示。*若若变量数少于数据个数,量数少于数据个数,则从左至右依次从左至右依次给变量量赋值,而最后一个,而最后一个变量取得所有余下数量取得所有余下数据的据的值。*若若变量个数多余量个数多余给定数据个数,定数据个数,则从左到右依次从左到右依次给变量量赋值,后面的,后面的变量没有量没有输入数据入数据与之与之对应时,其,其值就就为空串。空串。7湖南第一师范学院湖南第一师范学院2.位置参数位置参数执行执行Shell脚本
6、时可以使用参数。由出现命令行上的位置脚本时可以使用参数。由出现命令行上的位置确定的参数称做位置参数。在确定的参数称做位置参数。在sh中总共有十个位置参数,其对应的名称依次是中总共有十个位置参数,其对应的名称依次是$0,$1,$2,.$9。其中。其中$0始终表示命令名或始终表示命令名或Shell脚本名,对于一脚本名,对于一个命令行,必然有命令名,也个命令行,必然有命令名,也就必定有就必定有$0;而其它位置参数依据实际需求,可有可无。;而其它位置参数依据实际需求,可有可无。8湖南第一师范学院湖南第一师范学院(一)位置参数作用:(一)位置参数作用:(1)在你的)在你的计算机上建立以下三个文件(算机上
7、建立以下三个文件(设建立在目建立在目录/usr/username之下,其中之下,其中username表示你的主目表示你的主目录名):名):文件文件m1.c:main()printf(Beginn);文件文件m2.c:#includeprintf(OK!n);文件文件ex3:#ex3:shellscripttocombinefilesandcountlinescat$1$2$3$4$5$6$7$8$9|wc-l#end9湖南第一师范学院湖南第一师范学院(2)将将ex3改改为具有具有执行行权限:限:$chmod+xex3(3)利用利用env命令命令查看在看在环境境变量量PATH中是否包中是否包含你
8、的当前工作目含你的当前工作目录(即(即/usr/use-name)。如果没有包含在其中,)。如果没有包含在其中,则利用以下利用以下语句改句改变PATH的的值:$PATH=$PATH:/usr/usr/username(4)执行脚本行脚本ex3:$ex3m1.cm2.c10湖南第一师范学院湖南第一师范学院(二)(二)用用set设置位置参数值。设置位置参数值。(1)在你的工作目录中以下脚本文件在你的工作目录中以下脚本文件ex4:#ex4:shellscripttocombinefilesandcountlines#usingcommandsettosetpositionalparametersse
9、tm1.cm2.cecho$1echo$2echo$3cat$1$2$3|wc-l#end11湖南第一师范学院湖南第一师范学院(2)将将ex4改为具有执行权限:改为具有执行权限:$chmod+xex4(3)执行脚本执行脚本ex4:$ex4m1.cm2.c12湖南第一师范学院湖南第一师范学院(三)(三)利用位置参数给定变量赋值。利用位置参数给定变量赋值。(1)建立脚本建立脚本ex5,如下所示:,如下所示:n1=$1n2=$2n3=$3cat$n1$n2$n3|wc-l(2)将将ex5改为具有执行权限:改为具有执行权限:$chmod+xex5(3)执行脚本执行脚本ex5:$ex5m1.cm2.c1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验9 Shell编程 实验 Shell 编程
限制150内