- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验9 Shell编程
实验9 Shell编程 一. 实验目的: 1.了解 UNIX shell 的作用和主要分类。2.了解 Bourne shell( 简称sh)的一般语法规则。3.能编写简单的shell程序 二. 实验内容: 1.Shell变量的定义及其使用。 2.位置参数和环境变量。 3.Shell中的特殊字符。 4.一般控制结构。 三、实验步骤 一、Shell变量:Shell有两种变量:环境变量和临时变量。在Shell脚本中临时变量又分为两类:用户定义的变量和位置参数。1. 用户定义的变量用户定义的变量是最普遍的Shell变量,变量名是以字母或下化线打头的字母、数字和下线符序列,并且大小写字母意义不同。变量名的长度不受制。定义变量并赋值的一般形式是: 变量名=字符串 例如,?myfile=/usr/meng/ff/m1.c在程序中使用变量的值时,要在变量名前面加上一个符号“$”。这个符号告诉Shell,要读取该变量的值。 (1)定义并显示变量的值 $ dir=/usr/mengqc/file1 $ echo $ dir /usr/mengqc/file1 $ echo dir dir $ today=Sunday $ echo $ today $ Today Sunday $ str=Hapy New Year ! $ echo Wish You $str Wish You Happy New Year ! 2)read命令 作为交互式输入手段,可以利用read命令由标准输入(即键盘)上读取数据,然后赋给指 定的变量。其一般格式是:read 变量1 [变量2...] 例如: $ read name -----输入read命令 mengqc -----输入name的值 $ echo Your Name is $ name. Your Name is mengqc -----显示输出的结果 $ read a b c -----read命令有三个参数 crtvu cn edu -----输入三个字符串,中间以空格隔开 $ echo Email : $a. $c. $b Email : crtvu.edu.cn -----显示输出结果 利用read命令可交互式的为变量两赋值。输入数据时,数据间以空格或制表符作为分隔符 。注意以下情况: *若变量个数与给定数据个数相同,则依次对应赋值,如上面例子所示。 *若变量数少于数据个数,则从左至右依次给变量赋值,而最后一个变量取得所有余下数 据的值。 *若变量个数多余给定数据个数,则从左到右依次给变量赋值,后面的变量没有输入数据 与之对应时,其值就为空串。 2. 位置参数执行Shell脚本时可以使用参数。由出现命令行上的位置确定的参数称做位置参数。在sh中总共有十个位置参数,其对应的名称依次是$0,$1,$2,...$9。其中$0始终表示命令名或Shell脚本名,对于一个命令行,必然有命令名,也就必定有$0;而其它位置参数依据实际需求,可有可无。 (一)位置参数作用: (1)在你的计算机上建立以下三个文件(设建立在目录/usr/username之下,其中userna me表示你的主目录名): 文件m1.c: main( ) { printf(Begin \n); } 文件m2.c: # include stdio.h { printf(OK! \n); } 文件ex3: # ex3: shell script to combine files and count lines cat $1 $2 $3 $4 $5 $6 $7 $8 $9 | wc -l # end (2) 将ex3改为具有执行权限: $ chmod +x ex3 (3) 利用env命令查看在环境变量PATH中是否包含你的当前工作目录(即/usr/use-name )。如果没有包含在其中,则利用以下语句改变PATH的值: $ PATH= $ PATH:/usr/usr/username (4) 执行脚本ex3: $ ex3 m1.c m2.c (二)用set设置位置参数值。(1) 在你的工作目录中以下脚本文件ex4:# ex4: shell script to combine files and count lines# using command set to set positional parametersset m1.c m2.cecho $1echo $2?echo $3?cat $1 $2 $3 | wc -l# end (2) 将ex4改为具有执行权限:?$ chmod +x ex4(3) 执行脚本ex4:$
原创力文档


文档评论(0)