基于UNIX操作系统编程 实验大纲.docx
《基于UNIX操作系统编程 实验大纲.docx》由会员分享,可在线阅读,更多相关《基于UNIX操作系统编程 实验大纲.docx(7页珍藏版)》请在冰豆网上搜索。
基于UNIX操作系统编程实验大纲
一、
二、课程名称:
《基于UNIX操作系统编程》
(一)本课程实验总体介绍
1、本课程上机实验的任务:
通过本实验了解并掌握UNIX操作系统的基本命令的使用,以及输入输出重定向、管道、进程控制、数据输入输出和shell编程等方面的知识。
在充分了解基本原理和基本语法格式的基础上,发挥学生独立分析问题和提出解决方法的能力,鼓励学生综合运用所学知识提出自己独特的和新的实现方案。
2、本课程上机实验简介:
本实验包含两个题目,一个是有关数据的输入输出和文件管理;另一个是状态监测和进程控制。
这两个实验题目涉及UNIX系统中的“文件”和“进程”两个基本概念,都是需要在熟练掌握shell编程语言、各种基本命令、以及输入输出重定向和管道的基本功能的基础上,鼓励学生不拘形式,充分发挥自己的创造力,设计出既满足功能要求,又别具一格的程序模块。
3、本课程适用专业:
计算机相关专业。
4、本课程上机实验涉及核心知识点:
核心知识点:
文件、进程、基本命令、输入输出重定向、管道、shell编程语言、程序设计、数据输入和输出、进程状态监控、文件读写和程序运行控制等。
5、本课程上机实验重点与难点:
数据输入输出、文件读写和进程状态控制。
6、本课程上机实验运用软件名称:
UNIX操作系统
7、总学时:
课程实验:
16学时
8、教材名称及教材性质(自编、统编、临时):
名称:
《UNIX初级教程》(第五版)
性质:
统编
9、参考资料:
(二)实验项目基本信息
实验项目1
1、实验项目名称:
文本建立和输入
2、实验项目的目的和任务:
目的:
使用户熟悉UNIX的基本SHELL程序设计方法,包括命令行参数检测、变量设置、文本建立和输入、程序运行控制和输入输出重定向
任务:
编写一个SHELL程序,将用户从键盘输入的文本附加到一个指定的文件中。
如果该文件不存在,则新建立该文件;如果该文件已经存在,则把键盘输入的文本附加到该文件后面。
输入内容及行数不限定,以空行表示输入结束。
运行结束时显示该文件内容。
3、上机实验内容:
(1)用屏幕编辑程序vi建立SHELL程序exam1。
程序头应有几行以#号开始的简单的程序功能说明行,其它主要的语句前或后都应有功能注释。
(2)通过检测变量$#的值判断命令行参数个数是否正确,如果正确则程序继续运行下去;否则提示用户该命令的运行格式:
Usage:
exam1filename
并退出运行。
(3)设置变量INPUT,并赋予任意一个非空的字符串。
(4)用echo语句在屏幕上提示用户输入任一行文本(空行表示整个输入结束)。
(5)用while建立一无限循环,循环退出条件为变量INPUT为空,循环体为用read语句读入一行到变量INPUT中,用echo命令将该变量的内容用附加方式的重定向(>>)输出到用户在命令行上指定的文件名中。
(6)用cat命令将该文件的内容显示在屏幕上。
(7)用ls命令查看刚建立好的exam1的读写保护模式。
(8)用chmod命令修改exam1的读写保护模式,使用户自己拥有执行权限。
(9)在当前目录下直接用程序名exam1运行该程序.思考:
如果出现类似如下提示:
exam1:
notfound
是什么原因?
如何调整?
(10)试试不带参数或参数个数大于等于2个来运行exam1程序,看程序能否正常判断,并显示提示信息后退出。
(11)用一个新文件名newfile作为参数正常运行exam1,任意输入若干行,并以一个空行结束输入。
程序能否显示前面的所有输入行后结束运行。
(12)用ls命令查看当前目录下是否有新建立的newfile文件,并用cat命令查看该文件的内容。
(13)再次用newfile作为参数运行exam1,运行结束后查看newfile文件中本次键盘输入的内容是附加还是覆盖上次运行时输入的内容。
(14)试试使用其他的文件名作为参数来运行exam1程序。
(15)思考:
如果要使作为输入结束标志的空行不出现在新建立的结果文件中,exam1该作哪些修改?
4、学时数:
5
实验项目2
1、实验项目名称:
用户监测
2、实验项目的目的和任务:
目的:
使用户熟悉一种简单的指定用户的监测方法.练习命令行参数、用户变量、while循环控制和暂停进程(sleep)等方面的使用技巧。
任务:
编写一个用户监测程序usr_monitor,其运行格式为:
usr_monitorusername
其中username是用户指定的任意一个用户名。
程序运行时首先列出当前系统中的已登录用户的名单,再检查指定用户是否已登录。
如果已登录,则显示相应信息;如果未登录,则等待该用户登录,直到指定用户登录进入系统为止。
3、上机实验内容:
①建立shell程序usr_monitor
②根据变量$#的值检查命令行上是否有一个用户名,如果有则
继续运行;如果没有或多于一个用户名则提示运行格式:
Usage:
usr_monitorusername
③运行who命令,并将运行结果中的用户名字段截取下来,保存到一个用户变量中。
④echo命令显示该变量的值,即当前系统中的用户名单。
⑤判断用户名单中是否包含命令行上指定的用户,如果有则显示:
user[username]islogon
并退出程序。
⑥如果用户名单中没有包含命令行上指定的用户,则显示:
waitinguser[username]…
光标停留在省略号后面。
⑦使用while循环,用sleep命令每隔5秒钟检查指定用户是否已登录系统。
检测方法与步骤3相同。
⑧如果指定用户未登录,则一直等待下去;如果指定用户已登录,则在省略号后面接着显示:
[username]islogon
退出循环,并结束程序。
⑨调整程序格式,在程序头加上若干行程序功能注释,在程序的重要功能语句处加上简单注释。
⑩在本实验程序中可以不使用“实验内容”中的命令,只要程序能达到“实验要求”中指定的功能即可。
4、学时数:
5
实验项目3
1、实验项目名称:
文件状态查询
2、实验项目的目的和任务:
目的:
使用户熟悉UNIX的基本SHELL程序设计方法,包括命令行参数检测、变量设置、文件状态检测与特定信息读取、程序运行控制。
任务:
编写一个SHELL程序,动态检测指定文件的状态信息,当文件的大小发生改变时,给出提示信息,并继续前进检测。
3、上机实验内容:
①.清屏;
②.提示用户输入要检测其状态的文件名;
③.显示该文件的状态信息(提示:
该状态信息可由命令ls–l来得到),或找不到该文件时的错误提示;
④.可用cut命令,或用sed或awk命令来截取状态信息中文件的大小并保存;
⑤.每隔5秒钟检测一次该文件大小的信息,并与保存的文件原来的大小相比较;
⑥.如果文件大小未改变,则屏幕显示不变,并继续每隔5秒钟检测一次;
⑦.如果文件大小已改变,则保存新的文件大小,并在屏幕上显示:
file[filename]sizechanged
括号中的filename为本程序运行时用户输入的被检测的文件名。
程序继续每隔5秒钟检测一次文件的大小;
⑧.程序循环执行5~7步的操作。
当被检测的文件或者已累计改变了两次大小,或者已连续被检测了十次还未改变大小时,给出相应提示,然后清屏退出。
4、学时数:
6
作为新员工,第一年的工作带有实习性质,主要工作包括如下一些。
首先要熟悉本行环境,包括业务环境、各部门间的协调关系、部门内部的各种事宜以及抓紧时间补充银行以及金融相关知识等,搞好集体团结也是必不可少的。
当然熟悉本部门的主要客户群体、主要的业务范围也是重要工作。
实习过程中要不断学习、积累,理清业务之间的往来关系,慢慢开始与客户交流、着手实际业务,逐渐从一个实习生转变为合格的业务人员。
成长为一名合格的业务人员后,要本着服务的精神、为本行尽责、为客户负责的态度,做好所有业务。
以诚恳的服务态度赢得更多的客户青睐。
熟悉各项产品后,要横向、纵向地挖掘业务产品的潜在力,针对性的为各类客户推荐适合的产品。
在此期间,不断的把客户建议或意见向领导及相关产品研发部门反馈,以点滴的积累为本行尽力、创造更多的价值,这才是我的职责所在。
在基层业务部门经历足够的磨砺之后,我相信我能在更高的管理层发挥更大的作用。
在管理层岗位上,我会用我的学识与经验为部门同事引导,让大家共同进步,也使本行在一个又一个像我们这样的同事的努力下蒸蒸日上。