欢迎来到天天文库
浏览记录
ID:9398379
大小:199.00 KB
页数:9页
时间:2018-04-30
《shell编程大作业-学生信息管理系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Shell编程大作业设计报告题目:学生信息管理系统院系:计算机科学系专业班级:11计本1班学号:3111101122学生姓名:王天赠2014年6月4日一、shell编程大作业的目的(1)熟悉shell命令的功能和使用方法(2)掌握shell编程的基本思想(3)理解shell程序的设计方法(4)熟悉shell程序的编辑、运行、调试方法与过程二、shell编程大作业的内容有文本文件student.txt,该文件是所有学生的信息,每个学生存储一行信息,信息格式如:学号:姓名:性别:专业如(00101:张三:男:计算机)设计一个shell程序脚本,名称为student.
2、sh,该shell程序完成如下功能:(1)当输入student.sh时,输出文件的全部内容(2)当输入student.sh–h5时,输出文件的前5条记录;当输入student.sh–t5时,输出文件的最后5条记录;(3)当输入student.sh–onum,输出文件的全部内容,并按学号升序排序;输入student.sh–odep,输出文件的全部内容,并按系别排序;(4)当输入student.sh-a00101:张三:男:计算机时,首先判断00101记录是否存在;如果存在,则给出提示,并输出文件中学号为00101的该行信息;如果不存在,判断该行信息是否符合格式要求
3、(各个字段不能为空;学号必须是5个数字;性别的取值只能是”男”和”女”),如果不符合要求,则提示用户信息格式不对;否则把该信息写入文件student.txt。(5)当输入student.sh-d00101(或student.sh–d张三)时,首先判断00101(或张三)记录是否存在,如果不存在,给出提示;如果存在,显示该行信息并提示用户确认是否要删除记录,如用户输入y或者yes,则删除文件中学号为00101的该行信息,如果用户输入n或no时,则不做删除操作(6)当输入student.sh-s00101(或student.sh–s张三)时,首先判断00101(或张
4、三)记录是否存在,如果不在,给出提示,如果存在,则输出文件中00101(或张三)的该行信息(7)当输入student.sh–-help时;输出该shell的用法(8)当用户输入的选项不正确时,给出错误提示,并输出该shell的用法(如:student.sh-q123456需错误提示)注:如果中文格式的学生信息易出错,信息格式可改为英文方式三、所用的设备与软件环境VMwareWorkstation10.0.2,RedHat9.0,Windows7OperationSystem初始化数据Student.sh-命令四、shell程序的结构设计删除数据错误提示查询数据帮
5、助插入数据-o、-s、-h-a-help-d五、shell程序的详细设计(1)(2)(3)(4)(5)(6)(7)(8)六、程序的调试运行1、初始化数据2、(1)(2)(3)(4)(5)(6)(7)(8)七、程序清单注:程序运行前先执行alias"student.sh"="shstudent.sh"#!/bin/sh-if(test-z$1)thencatstudent.txtelif(test$1!="-h"-a$1!="-t"-a$1!="-o"-a$1!="-a"-a$1!="-d"-a$1!="-s"-a$1!="--help")thenecho"Com
6、manddoesnotexist"echo"use:"echo-e"tstudent.sh[-h]or[-t]or[-onumordep]or[-asno:sname:sex:dep]or[-dsnoorsanme]or[-ssnoorsname]or[--help]"elif(test$1="-h")thencatstudent.txt
7、head-n$2elif(test$1="-t")thencatstudent.txt
8、tail-n$2elif(test$1="-o")thenif(test-z$2)thenecho"use:studnent.sh-on
9、umordep"elseif(test$2="num")thencatstudent.txt
10、sort-t:-k1elif(test$2="dep")thencatstudent.txt
11、sort-t:-k4fifielif(test$1="-s")thenif(test-z$2)thenecho"use:student.sh-ssnoorsname"elseaa=`grep$2student.txt`if(test-z$aa)thenecho"Thedatadonoexist"elseecho$aafifielif(test$1="-d")thenif(tes
12、t-z$2)thenec
此文档下载收益归作者所有