Linux编程用户信息管理

上传人:壹****1 文档编号:458570847 上传时间:2023-08-10 格式:DOC 页数:16 大小:542KB
返回 下载 相关 举报
Linux编程用户信息管理_第1页
第1页 / 共16页
Linux编程用户信息管理_第2页
第2页 / 共16页
Linux编程用户信息管理_第3页
第3页 / 共16页
Linux编程用户信息管理_第4页
第4页 / 共16页
Linux编程用户信息管理_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《Linux编程用户信息管理》由会员分享,可在线阅读,更多相关《Linux编程用户信息管理(16页珍藏版)》请在金锄头文库上搜索。

1、.一 绪论1.1 设计背景Linux 是一套免费使用和自由传播的类Unix 操作系统 ,是一个基于POSIX 和 UNIX 的多用户 、多任务 、支持多线程和多CPU 的操作系统 。 Linux 继承了 Unix 以网络为核心的设计思想 ,是一个性能稳定的多用户网络操作系统。它主要用于基于Intel x86 系列 CPU 的计算机上 。 这个系统是由全世界各地的成千上万的程序员设计和实现的。1.2 设计目的在 Linux 系统的 /etc 目录下有这样一个文件passwd ,该文件里包含系统中所有用户信息的记录 ,记录里包含每个用户的如下信息:用户名 、密码、用户 ID 、组 ID、用户全名

2、、用户主目录和用户登录所用的shell 。 请设计一个脚本( shell )程序能实现增加、删除、查找和显示特定用户信息的功能。你们可以通过创建一些UNIX/LINUX shell脚本文件来满足以上需求 。二 需求分析2.1 系统概述任务概述Linux 作为多用户 、多任务的操作系统,其系统资源是所有用户共享的。对用户的管理是操作系统的重点。 LINUX 课程设计要用shell 编程实现 ,将理论学习付诸实践。设计一个脚本 ( shell )程序能实现增加、删除 、查找和显示特定用户信息的功能。需求规定程序要包括四个文件,即 menu , add , delete , passwd 四个文件

3、。 passwd 文件是用来保存用户信息; menu文件是主菜单,要求运行的时候能显示一个菜单供用户选择;addusers 文件是用来增加信息;deluser 文件是用来删除信息。在主 Shell 脚本文件里 (必须以menu命名 )要有一个多操作选项的菜单以便用户从中选择。对于任务6 和 7,需要.专业专注.编写单独的Shell 脚本文件 (必须分别命名为addusers 和 deluser )并且在主脚本menu 文件中调用这些脚本文件。2.2 功能需求在主 Shell 脚本文件里 (必须以 menu 命名)要有一个多操作选项的菜单以便用户从中选择 。 在不同任务的中 ,这些操作能自动实现

4、以下功能 :1、 在屏幕上显示当前所有用户的记录2、 在屏幕上显示当前所有用户(经过格式化和排序的)的记录3、 只在屏幕上显示用户名和用户ID4、 只在屏幕上显示(经过格式化和排序的)用户名和用户ID5、 查询并显示特定用户的记录6、 往 passwd 文件里增加新的用户记录7、 从 passwd 文件里删除某个用户记录你可以使用UNIX/LINUX中一些比较简单的命令或命令组合来执行1、 2 、 3、 4、5 的任务 。 对于任务6 和 7,你需要编写单独的Shell 脚本文件 (必须分别命名为addusers和deluser )并且在你的主脚本menu 文件中调用这些脚本文件。三 系统设计

5、3.1 结构层次图主菜单显示显示显示显示当前当前格式查找用户添加删除所有所有化后指定名和用户用户退出用户用户用户用户用户信息信息的记经格名和信息ID录式化用户.专业专注.3.2. 运行流程(1) 总运行流程主菜单是否正确提示错YN选择误功能实是否选QN继续选择现Y退出( 2 ) addusers 模块运行流程用户添加是否正确N填写信息Y提示错误添加用户信息进入主菜单(3)deluser 模块用户运行流程.专业专注. .用户删除输入用户 ID是否存在N用户 IDY. .提示错误是否删除NY删除成功进入主菜单四 系统实现主菜单 :选择 1 :打印当前所有用户选择 2 :打印当前所有用户记录(格式化

6、后 ).专业专注.选择 3 :打印用户名和用户ID选择 4 :打印用户名和用户ID (格式化后 )选择 5 :查询特定用户没有输入关键字和输入关键字没有记录:查找到记录 :选择 6 :添加用户.专业专注.添加成功 :用户名无效情况:用户名只能是数字或字母,用户名不能为空,密码无效 :密码不能小于, 密码不能为空,密码只能是数字或字母,密码必须和确认密码相同用户 ID 无效 :用户 ID 不能为空 ,用户 ID 不能小于 , 用户 ID 只能为数字.专业专注.组 ID 无效:组 ID 不能为空 ,组 ID 不能小于 , 组 ID 只能为数字登录 shell 无效 : shell 只能是 bash

7、,sh,kash,csh中的一种 , shell 不能空选择 7 :删除用户查找用户ID 存在 ,是否要删除选Y,删除成功 :用户 ID 不存在和没有输入用户ID 情况:用户 ID 存在 ,在确认删除选N 和其他字符是退出:.专业专注.选择 Q:退出不正确选择 :五 代码实现1)主菜单代码#! /bin/bash# 删除用户clear.专业专注.echo 用户删除echo =while truedoread -p 输入用户ID: useridsif( test exprmatch $userids 0-9* -ne expr length $userids ) thenecho 输入的用户ID

8、 只能是数字 ,请重新输入 elif ( test -z $userids ) thenecho 用户 ID 不能为空 elsebreakfidonegetuserid=$( awk -F : $3 = $userids print $3 passwd )if ( test $getuserid) thenread -p 是否要删除 (Y/N): ackif (test $ack = Y ) thensed -i /$userids/d passwdif ( test $? -eq 0) thenecho 删除成功 elseecho 删除失败 .专业专注.breakfielsebreakfielseecho 用户不存在 fi2)用户添加代码#! /bin/bashclear# 用户名echo 新用户添加echo =while truedoecho -n 请输入用户名:read usernamea= expr match $usern

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 幼儿/小学教育 > 幼儿教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号