实验3:shell程序设计

实验3:shell程序设计

ID:21726950

大小:44.50 KB

页数:7页

时间:2018-10-24

实验3:shell程序设计_第1页
实验3:shell程序设计_第2页
实验3:shell程序设计_第3页
实验3:shell程序设计_第4页
实验3:shell程序设计_第5页
资源描述:

《实验3:shell程序设计》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、实验报告3课程名称:Linux驱动程序开发实验名称:Shell程序设计学生姓名:班级:学号:指导老师:钱振江成绩:一、实验目的1.Shell程序设计中变量的使用;2.理解通道的概念并初步掌握它的使用方法;3.掌握算术操作、字符串操作、逻辑操作、文件操作;4.掌握ifthenfi、iftheneliffi、case、while、for等控制语句;5.在shell脚本中使用函数;二、实验任务与要求1.通过对shell程序的调试,理解变量$#,$0,$1,$2,$3,$@的含义;2.Shell顺序程序设计;3.Shell分支程

2、序与多分支程序设计;4.Shell循环程序设计。三、实验工具与准备计算机PC机,LinuxUbuntu操作系统预备知识1.环境变量:$HOME;$PATH;$PS1;$1~$9;$*;$@;$#;$$;$?;$!等。$0是一个内部变量,它是必须的,而$1则可有可无,最常用的内部变量有$0、$#、$?、$*,它们的含义如下:q$0:命令所在的路径q$#:传递给程序的总的参数数目q$?:shell程序在shell中退出的情况,正常退出返回0,反之为非0值q$*:传递给程序的所有参数组成的字符串2.字符串比较有=、!=、-n、

3、-z;算术运算有-eq、-ge、-le、-ne、-gt、-=lt;逻辑运算有!、-a、-o;文件测试-d、-f、-x等;3.for循环q语法:for变量in列表do操作done4.while循环q语法:while表达式do操作done5.until循环q语法:until表达式do操作Done6.if语句q语法:if表达式1then操作elif表达式2then操作elif表达式3then操作…else操作fi7.case语句q语法:case字符串in值1

4、值2)操作;;值3

5、值4)操作;;值5

6、值6)操作;;*)操作;;e

7、saccase的作用就是当字符串与某个值相同是就执行那个值后面的操作。如果同一个操作对于多个值,则使用"

8、"将各个值分开。在case的每一个操作的最后面都有两个";;",分号是必须的。四、实验步骤与操作指导1.调试下列shell程序,写出变量$#,$0,$1,$2,$3,$@的含义。#!/bin/bashecho“程序名:$0”echo“所有参数:$@”echo“前三个参数:$1$2$3”shiftecho“程序名:$0”echo“所有参数:$@”echo“前三个参数:$1$2$3”shift3echo“程序名:$0”e

9、cho“所有参数:$@”echo“前三个参数:$1$2$3”exit0修改程序,使用变量$#,程序运行时从键盘输入文件名,判断目录或者文件是否存在,如果存在,显示文件内容。提示:readDORFif[-d$DORF]thenls$DORFelif[-f$DORF]......2.编写一个shell程序,此程序的功能:显示root用户目录下的文件信息,然后建立一个kk的文件夹,在此文件夹下新建一个文件aa,修改此文件的权限为可执行。提示:1.进入root目录:cd/root2.显示root目录下的文件信息:ls–l3.新建

10、文件夹kk:mkdirkk4.进入root/kk目录:cdkk5.新建一个文件aa:viaa#编辑完成后需手工保存6.修改aa文件的权限为可执行:chmod+xaa7.回到root目录:cd/root在此基础上修改程序,所建立的目录名从键盘输入,把/root下的所有文件信息保存在aa文件中。3.调试下列shell程序,此程序的功能是:利用内部变量和位置参数编写一个名为test2的简单删除程序,如删除的文件名为a,则在终端输入的命令为“testa”。提示:除命令外至少还有一个位置参数,即$#不能为0,删除的文件为$1。(1

11、)用vi编辑程序[root@localhostbin]#vitest2#!/bin/shiftest$#-eq0thenecho"Pleasespecifyafile!"elsegzip$1#先对文件进行压缩mv$1.gz$HOME/dustbin#移动到回收站echo"File$1isdeleted!"fi(2)请修改程序,查看回收站中的文件,从键盘输入回收站中的某一文件,把此文件恢复到/home目录下。(3)删除垃圾箱中的所有文件。4.调试下列程序并记录实验结果,程序的主要思想是用while循环求1到100的和。(1

12、)用gedit编辑脚本程序test12[root@localhostbin]#gedittest12total=0num=0while((num<=100));dototal=`expr$total+$num((num+=1))doneecho"Theresultis$total"(2)用for语句完成以上求和。(3

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。