Linux shell大作业

Linux shell大作业

ID:39465363

大小:370.00 KB

页数:18页

时间:2019-07-04

Linux shell大作业_第1页
Linux shell大作业_第2页
Linux shell大作业_第3页
Linux shell大作业_第4页
Linux shell大作业_第5页
资源描述:

《Linux shell大作业》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Shell大作业说明书题目LINUXShell编程学生姓名学号系别年级专业指导教师完成日期2010年6月25日1一、需求分析1.任务目标Linux作为多用户、多任务的操作系统,其系统资源是所有用户共享的。对用户的管理是操作系统的重点。LINUX课程设计要用shell编程实现,将理论学习付诸实践。设计一个脚本(shell)程序能实现增加、删除、查找和显示特定用户信息的功能。2.系统要求程序要包括四个文件,即menu,add,delete,passwd四个文件。passwd文件是用来保存用户信息;menu文件是主菜单,要求运

2、行的时候能显示一个菜单供用户选择;add文件是用来增加信息;delete文件是用来删除信息。在主Shell脚本文件里(必须以menu命名)要有一个多操作选项的菜单以便用户从中选择。对于任务6和7,需要编写单独的Shell脚本文件(必须分别命名为add和delete)并且在主脚本menu文件中调用这些脚本文件。在主目录下建立一个以07wl-0x-xx(x为班、座号)命名的目录,并且在作业中使用它作为工作目录。3.系统功能在主Shell脚本文件里(即menu文件)要有一个多操作选项的菜单以便用户从中选择。在不同任务的中,这些

3、操作能自动实现以下功能:1、在屏幕上显示当前所有用户的记录2、在屏幕上显示当前所有用户(经过格式化和排序的)的记录3、只在屏幕上显示用户名和用户ID4、只在屏幕上显示(经过格式化和排序的)用户名和用户ID5、查询并显示特定用户的记录6、往passwd文件里增加新的用户记录7、从passwd文件里删除某个用户记录其中:menu文件中的程序完成1,2,3,4,5功能;另外写一个add脚本文件和delete脚本文件分别实现选项6和7.当用户做了选择且所选的操作完成之后,可以再次显示主菜单以供用户做下一步选择。用while循环和

4、case条件语句配合来完成此操作。二、总体设计1.功能图17显示当前所有用户的记录显示当前所有用户经格式化后的记录显示用户名和用户ID显示格式化后用户名和用户ID查找指定用户信息添加用户信息删除用户信息用户信息主菜单2.流程图主菜单你的选择功能实现回车退出2.2.1主菜单172.2.2add模块2.2.3delete模块主菜单是否继续删除进入delete界面输入ID是否存在是否删除进入主菜单NYYYN17三、详细设计1.MENU主菜单主菜单在menu脚本文件里将创建如下菜单,菜单里包含供用户选择的一些操作。无效输入当用户

5、做了选择且所选的操作完成之后,应再次显示主菜单以供用户做下一步选择。在以上等待用户做出选择的菜单中,如果用户偶尔输入了一个代码而不是1、2、3、4、5、6、7或Q,就有信息提示“无效的代码,请按回车键继续”。等用户按了回车键之后,再次显示主菜单供用户做其他选择。如图:无输入在以上等待用户做出选择的菜单中,如果用户简单地按了回车键,就会出现信息“无效的代码"。等用户按了回车键之后,再次显示主菜单供用户做其他选择。17当用户选择了1时——打印当前所有用户记录当用户选择2时——打印当前经过格式化的用户记录后当用户选择3时,——

6、打印用户名和用户ID当用户选择4时,——打印(格式化的)用户名和用户ID当用户选择5时,——查找特定的记录如果输入的关键字不在记录里如果用户简单地按回车键而不是输入关键字172.ADD文件当用户在主菜单里选择6时你的add脚本文件就要被调用输入用户名用户输入一个无效的用户名用户只按回车没有输入输入密码输入密码时不显示要求密码长度至少达到6位以上确认密码如果与密码不符应该让用户重新输入17用户ID如果用户只是简单的按回车键如果用户输入的是一个无效的ID或者是不符合格式的ID组ID对组ID的要求类似与用户ID,一个有效的组I

7、D(数字、一般非超级用户的ID大等于500)登录shell一个有效的shell必须只能是bash、sh、kash、csh中的一种如果用户只按回车没有输入的话则显示信息:“没有输入!”,并提示用户再次输入shell名保存记录173.DELETE文件当用户在主菜单中选择7时,你的delete脚本文件必须被调用用户输入一个无效的用户ID用户简单的按回车键而没有任何输入继续删除四、附录(程序代码):1、menu主脚本文件代码#!/bin/sh-#声明全局变量dataSource='passwd';homePath='.';Add

8、Users=".Add.sh";DeleteUsers=".Delete.sh";CheckDataSourceFileExist(){if[-f$dataSource]then#文件存在17return0;else#文件不存在clear;echo-n"警告【$dataSource】不存在!请确认!";read;re

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

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

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