UNIX的shell大作业11计科张慧

发布 2022-09-10 11:21:28 阅读 4707

目录 1、引言。

2、实验目的及实验环境。

2.1实验目的3

2.2实验环境3

3、需求分析。

3.1任务目标3

3.1系统要求3

3.3系统功能3

4、实验内容。

5、实验流程图。

5.1 add模块4

5.2 delete模块5

6、实验步骤。

6.1 主脚本文件中的菜单5

6.2 输入错误时的信息显示5

6.3 在屏幕上显示当前所有用户的记录6

6.4 在屏幕上显示当前所有用户(经过格式化的)的记录6

6.5 只在屏幕上显示用户名和用户id7

6.6 只在屏幕上显示(经过格式化的)用户名和用户id7

6.7 查询并显示特定用户的记录7

6.8 增加用户新纪录8

6.9 删除用户记录8

6.10 退出9

7、实验功能相应**。

7.1 主循环菜单设计与实现10

7.2 判断文件是否存在10

7.3 查询特定记录设计与实现10

7.4功能1到功能4的设计与实现10

7.5添加用户信息设计与实现10

7.6删除用户信息设计与实现15

八、实验心得。

linux/unix shell编程大作业。

1.引言。随着linux操作系统在网络服务器、嵌入式系统等领域应用的迅速发展。linux作为多用户、多任务的操作系统。

任何要使用系统资源者必须先在系统内登记、注册,即开设用户账户,该账户包含用户名、口令、所有的shell等。为了计算机系统的安全,linux会对每一个要求进来系统的用户验证用户名和口令。

linux是一种自由和开放源**的计算机操作系统。目前存在着许多不同的linux,但它们全都使用了linux内核。linux可安装在各式各样的计算机硬件设备,从手机、平板电脑、路由器和**游戏控制台,到台式计算机,大型机和超级计算机。

linux是一个领先的操作系统,世界上运算最快的10台超级计算机运行的都是linux操作系统。

在linux系统的/etc目录下有这样一个文件passwd,该文件里包含系统中所有用户信息的记录,记录里包含每个用户的如下信息:用户名、密码、用户id、组id、用户全名、用户主目录和用户登录所用的shell。设计一个脚本(shell)程序实现增加、删除、查找和显示特定用户信息的功能。

加深对操作系统原理的理解,掌握实际操作系统的用法,动手实践,通过循序渐进的学习各种管理功能、系统应用,用shell编程实现linux课程设计,将理论学习付诸实践,提高操作能力。

2.实验目的及实验环境。

2.1实验目的。

(1)了解linux/unix shell编程,知道相应的shell命令;

(2)学会创建、调试、运行shell程序。

(3)能用shell脚本编写简单的应用程序。

2.2实验环境。

linux/unix 操作系统、vmware虚拟机、

3.需求分析。

3.1任务目标。

linux作为多用户、多任务的操作系统,其系统资源是所有用户共享的。对用户的管理是操作系统的重点。linux课程设计要用shell编程实现,将理论学习付诸实践。

设计一个脚本(shell)程序能实现增加、删除、查找和显示特定用户信息的功能。

3.2系统要求。

程序要包括四个文件,即menu,add,delete,passwd四个文件。passwd文件是用来保存用户信息;menu文件是主菜单,要求运行的时候能显示一个菜单供用户选择;add文件是用来增加信息;delete文件是用来删除信息。在主shell脚本文件里(必须以 menu 命名)要有一个多操作选项的菜单以便用户从中选择。

对于任务6和7,需要编写单独的shell脚本文件(必须分别命名为add和delete)并且在主脚本menu文件中调用这些脚本文件。在主目录下建立一个以 07wl-0x-xx(x为班、座号)命名的目录,并且在作业中使用它作为工作目录。

3.3系统功能。

在主shell脚本文件里(即menu 文件)要有一个多操作选项的菜单以便用户从中选择。在不同任务的中,这些操作能自动实现以下功能:

1、 在屏幕上显示当前所有用户的记录。

2、 在屏幕上显示当前所有用户(经过格式化和排序的)的记录。

3、 只在屏幕上显示用户名和用户id

4、 只在屏幕上显示(经过格式化和排序的)用户名和用户id

5、 查询并显示特定用户的记录。

6、 往passwd文件里增加新的用户记录。

7、 从passwd文件里删除某个用户记录。

其中: menu文件中的程序完成1,2,3,4,5功能;另外写一个add脚本文件和delete脚本文件分别实现选项6和7.当用户做了选择且所选的操作完成之后,可以再次显示主菜单以供用户做下一步选择。

用while循环和case条件语句配合来完成此操作。

4.实验内容。

在linux系统的/etc目录下有这样一个文件passwd,该文件里包含系统中所有用户信息的记录,记录里包含每个用户的如下信息:用户名、密码、用户id、组id、用户全名、用户主目录和用户登录所用的shell。请设计一个脚本(shell)程序能实现增加、删除、查找和显示特定用户信息的功能。

你们可以通过创建一些unix/linux shell 脚本文件来满足以上需求。可以用文本编辑器打开passwd文件,该文件里包含用冒号分隔开的字段组成的记录,如下所示:

root:x:0:0:root:/root:/bin/bash

zxj:x:500:500:zxj303:/home/zxj:/bin/bash

在主shell脚本文件里(必须以 menu 命名)要有一个多操作选项的菜单以便用户从中选择。在以下不同的任务中,通过这些操作能实现以下功能:

1、 在屏幕上显示当前所有用户的记录。

2、 在屏幕上显示当前所有用户(经过按规定格式排列和排序的)的记录。

3、 只在屏幕上显示用户名和用户id

4、 只在屏幕上显示(经过按规定格式排列和排序的)用户名和用户id

5、 查询并显示特定用户的记录。

6、 往passwd文件里增加新的用户记录。

7、 从passwd文件里删除某个用户记录。

可以使用unix/linux中一些比较简单的命令或命令组合来执行项的任务。对于任务6和7,需要编写单独的shell脚本文件(必须分别命名为add和delete)并且在你的主脚本menu文件中调用这些脚本文件。

可能还需要查询一些unix/linux命令,比如awk,、sort、tr、cut、paste、sed、grep;也可能还需要查询其他的unix/linux命令。

5.实验流程图。

5.1 add模块。

5.2 delete模块。

6.实验步骤。

6.1 主脚本文件中的菜单。

在menu脚本文件里将创建如下菜单,菜单里包含供用户选择的一些操作。

UNIX的shell大作业

linux unix shell编程大作业。在linux系统的 etc目录下有这样一个文件passwd,该文件里包含系统中所有用户信息的记录,记录里包含每个用户的如下信息 用户名 密码 用户id 组id 用户全名 用户主目录和用户登录所用的shell。请设计一个脚本 shell 程序能实现增加 删除...

操作系统课程大作业简单shell 附源码

本shell简介 shell 主控程序 400行。对输入的命令进行处理,为各个命令创建进程,运行结束时终止进程。myls 展开指定目录 200行。使用格式 myls dir 参数说明 若dir不为 则展开dir,否则展开当前目录,显示文件创建时间 最后修改时间 大小等基本属性。mycat 文本文件查...

热能11大作业

工程热力学课程综合性大作业参考题目2013.12 要求 1 每人单独做,单独交手写报告 2 题目任选,下面的题目仅供选用,也可根据兴趣做其它题目,各参数依资料结合实际而定,但要求内容与热力学有关 3 积极查阅大量文献,形成有自己思路和观点 4 不要求技术细节,主要从原理和能量合理利用的角度进行分析 ...