题目:机房管理系统设计
一 实训任务
以VM ware虚拟机软件和Ubuntu操作系统为平台,使用shell脚本编写程序,编辑生成上机课表并自动生成上机用户,进行用户课前和课后的管理。
二 实训要求
- 基本要求
- 定义起始登陆界面,要求有主菜单选择不同功能
- 根据登录用户显示欢迎对象、根据系统时间显示欢迎内容个性化的欢迎信息,有系统初始化、系统管理和退出三个菜单项操作提示菜单,能显示当前上课的具体时间(教学第几周、星期几第几节)和系统状态提示信息。
- 生成本机房的上机安排表,安排表有班级、课程名称(代号)、上机时间、课时、周数等信息,能对安排表进行显示、添加、删除、修改、复制、插入、排序等操作(注:不能直接进入vi编辑器进行以上操作)
- 生成本机房的上机用户:根据上机安排表自动生成对应的上机用户,一个用户对应于安排表的一条记录,且账号= 班级+课程;密码=班级+课程号
- 课前准备。为每个用户创建一个工作环境:创建工作空间和用户资料,打开权限等
- 课后整理。释放用户空间,进行资料收集。更改文件和目录属性,关闭使用权限,对发生改变和新生成文档要进行打包压缩;删除在用户目录下创建工作目录等等。
2、发挥部分
在主菜单添加功能,实现对/etc/passwd文件中用户信息的管理(将文件拷到其它目录下再进行操作)。能够实现对特定用户的信息(包括用户名、密码、ID、组ID、用户目录、登陆所用SHELL等)进行查找、显示、删除、添加,并能在文件中添加、删除新用户等功能。
三 实训原理
图1 系统参考框图
部分程序:
#!/bin/bash
clear
flag=1
flag2=0
IFS=: #分隔符
input=zhanghao.txt #需要读取的文件
while true
do
if [ $flag = 1 ]
then
echo "请输入管理员帐号:"
read zh
echo "请输入管理员密码:"
read mm
while
read ZH MM #读取文件里的帐号和密码
do
if [ "$zh" != "$ZH" ]
then
continue
fi
if [ "$mm" = "$MM" ] #密码配对
then
flag2=1
flag=0
clear
else
echo "输入有错!"
echo "请重新输入!"
fi
done<$input #从文件中读取内容
fi
if [ $flag2 = 1 ] #帐号和密码配对成功则执行里面到内容
then
echo "" #管理员菜单界面
echo "欢迎 $zh 老师 "
echo "1 安排表"
echo "2 用户管理"
echo "3 退出"
date
echo "请选择您需要的选项:"
read s
case $s in #选择
1)
clear
bash anpaibiao.sh #安排表程序
;;
2)
bash user.sh #用户管理程序
;;
3)
exit 0 #退出
clear
;;
esac
fi
done
资料包括:
需要完整的资料可在我的资源里下载,也可以加入我的纷传圈子,里面有资源压缩包的百度网盘下载地址及提取码。
纷传点击用微信打开即可,过程有点繁琐请见谅。