LINUX课程设计-shell编程.docVIP

  • 374
  • 0
  • 约1.12万字
  • 约 19页
  • 2018-01-08 发布于江西
  • 举报
LINUX课程设计-shell编程.doc

《Linux操作系统》 课程设计 题 目: Shell编程—用户信息管理 专 业: 班 级: 学 号: 姓 名: 指导老师: 2012年06月08日 一.课程设计目的 《Linux操作系统》课程设计是专业的集中实践性环节之一,是学习完《》课程后进行的一次全面的综合练习。其目的在于加深对操作系统使学生更好地操作系统的、及 二.课程设计内容 在主Shell脚本文件里(必须以 menu 命名)要有一个多操作选项的菜单以便用户从中选择。在不同任务的中,这些操作能自动实现以下功能: 在屏幕上显示当前所有用户的记录 在屏幕上显示当前所有用户(经过格式化和排序的)的记录 只在屏幕上显示用户名和用户ID 只在屏幕上显示(经过格式化和排序的)用户名和用户ID 查询并显示特定用户的记录 往passwd文件里增加新的用户记录 从passwd文件里删除某个用户记录 在目录下有四个文件分别为menu,passwd,add,delete 注: passwd是自建数据文件,而不是/etc/passwd这个文件,切记。 menu、add和delete是shell脚本文件。 三.课程设计需要知识的基本原理及功能简介 变量定义、变量使用、循环控制结构、条件选择结构、用户交互、文件读写、文本内容分析以及linux重要命令的使用等。程序要包括四个文件,即menu,add,delete,passwd四个文件。passwd文件是用来保存用户信息;menu文件是主菜单,要求运行的时候能显示一个菜单供用户选择;add文件是用来增加信息;delete文件是用来删除信息。在主Shell脚本文件里(必须以 menu 命名)要有一个多操作选项的菜单以便用户从中选择。对于任务6和7,需要编写单独的Shell脚本文件(必须分别命名为add和delete)并且在主脚本menu文件中调用这些脚本文件。 四.设计步骤: 1.功能图 2.流程图 2.2.1主菜单 2.2.2 add模块 2.2.3 delete模块 3.截图 menu脚本执行后,大概应该呈现为下图所示的情况: 假如,passwd文件中的内容如下所示: root:x:0:0:root:/root:/bin/bash linux:x:500:500:linux:/home/linux:/bin/bash lianmin:x:503:500:lianmin:/home/lianmin:/bin/bash 090510217:x:800:800:liuxy:/home/090510217:/bin/bash liuxianyu:x:801:801:lxy:/home/liuxianyu:/bin/bash 选择菜单1时,显示的结果如下图所示: 选择菜单2时,显示的结果如下图所示: 选择菜单3时,显示的结果如下图所示: 选择菜单4时,显示的结果如下图所示: 选择菜单5,并输入需要查询的用户名时,显示的结果如下图所示: 选择菜单6,显示的结果如下图所示: 完成添加用户后,在调用菜单2应该能够看到新添加用户mycount的信息条目。 选择菜单7,通过用户ID来删除用户,显示的结果如下图所示: 选择菜单q时,显示的结果如下图所示: 五.源代码 1).源代码主要思路 1. menu主菜单 无效输入 当用户做了选择且所选的操作完成之后,应再次显示主菜单以供用户做下一步选择。在以上等待用户做出选择的菜单中,如果用户偶尔输入了一个代码而不是1、2、3、4、5、6、7、q或Q,就有信息提示“请按回车继续...”。等用户按了回车键之后,再次显示主菜单供用户做其他选择。 查询用户是否存在,先判断是否输入,再判断用户名是否存在。 while true do echo 请输入要查询的用户名: read answer echo $b $answer if (test -z $answer) then echo 你还没有输入 continue elif grep -i $answer $dataSource then echo break else echo 你输入的用户不存在,没有找到 $answer

文档评论(0)

1亿VIP精品文档

相关文档