Linux程序设计实验报告.docx
《Linux程序设计实验报告.docx》由会员分享,可在线阅读,更多相关《Linux程序设计实验报告.docx(74页珍藏版)》请在沃文网上搜索。
1、Linux程序设计实验指导书实验类别:课内实验 实验课程名称:Linux程序设计实验室名称:软件工程专业实验室 实验课程编号: 000 总 学 时:32 学 分: 2 适用专业:软件工程 先修课程:Linux操作系统、C程序设计实验在教学培养计划中地位、作用:通过讲授Linux的操作使用、系统结构和Linux环境下的程序设计,使学生对Linux操作系统获得一个全面的认识和掌握。一方面,学生通过学习系统程序设计,能够复习操作系统中的基本概念,对文件管理、进程控制有更深入的理解;另一方面,学生学会在Linux环境下工作,进一步熟悉C语言程序设计和数据结构的知识,编写进行系统维护的脚本文件和实用化的
2、大型应用程序,如网络应用程序。同时,本课程为学生进一步学习其它后续课程(如高级操作系统、Linux内核源代码分析、嵌入式系统等)打下基础。Linux程序设计实验大纲Linux Program Design课程类别:学科专业教育课程 课程名称:Linux程序设计开课单位:软件学院 课程编号:N03140112总 学 时:32 学 分:2适用专业:软件工程先修课程:程序设计基础一、实验教学目标熟练掌握shell编程、熟练使用linux系统、掌握进程控制和进程间通信,学会编写网络程序,学会在linux环境中编写web程序。养成一种良好的程序设计风格。二、实验环境Linux三、实验教材及参考书:1 实
3、验指导书(自编讲义)2Linux环境C程序设计 徐诚 高莹婷等 清华大学出版社2010.13linux入门到精通刘忆智 清华大学出版社2010.1四、实验成绩评定方式根据学生在实验过程中的认真程度、上机结果验收情况以及实验报告撰写质量,进行综合评定。五、实验项目及学时分配序号实验名称实验类别学时数备注1Linux基本命令的使用验证型22Shell程序设计设计型23文件操作与文件管理验证型24Linux下简单C程序设计验证型25进程控制和进程间通信设计型26网络程序设计验证型2六、实验内容及要求实验一 Linux基本命令的使用1、实验目的(1)学习和掌握Linux的基本命令(2)增强学生对Lin
4、ux的学习兴趣2、实验内容(1)linux的登录操作(2)常用基本命令的使用实验二 Shell程序设计1、实验目的(1)Shell程序设计中变量的使用;(2)理解通道的概念并初步掌握它的使用方法;(3)掌握算术操作、字符串操作、逻辑操作、文件操作;(4)掌握ifthenfi、iftheneliffi、case、while、for等控制语句;(5)在shell脚本中使用函数;2、实验内容(1)通过对shell程序的调试,理解变量$#,$0,$1,$2,$3,$的含义;(2)Shell顺序程序设计;(3)Shell分支程序与多分支程序设计;(4)Shell循环程序设计。实验三 文件操作与文件管理1
5、、实验目的(1)熟悉Linux下常用的操作指令。(2)加深对文件,目录,文件系统等概念的理解。(3)掌握Linux文件系统的目录结构。 (4)掌握有关Linux文件系统操作的常用命令。 (5)了解有关文件安全方面的知识。2、实验内容Linux文件系统操作的常用命令。实验四 Linux下简单C程序设计1、实验目的(1)学习和掌握gcc等Linux的开发调试环境。(2)学会在Linux下编写C程序。2、实验内容(1)学习GCC编译程序(2)学习并分别使用标准C的文件操作函数和Linux的系统调用创建一个对学生基本信息进行操作(插入、修改和删除)的C程序。实验五 进程控制和进程间通信1、实验目的为了
6、理解和掌握UNIX和Linux进程通信系统调用的功能,这里给出了进程通信实现机制中使用的系统调用命令的格式和如何利用系统调用命令进行进程通信编程,以便通过学习,提高学生对进程通信系统调用的编程能力。2、实验内容编写一个有名管道程序。一个(客户)进程从键盘循环读一系列字符,将这些字符和发送者的pid发给服务器进程,让其统计输入的是字符还是数字,分别为多少个,完成后再向客户进程发回服务的结果,由客户进程输出。实验六 网络程序设计1、实验目的(1)理解Socket概念;(2)理解并掌握Socket模型下获得本机IP信息的方法;(3)理解并发服务器模型,掌握通用套接字开发技术;(4)掌握Linux平台
7、数据结构的传送方法。2、实验内容(1)编写获得本机IP信息的程序; (2)编写基于并发服务器模式的网络通信原型系统; (3)要求至少综合使用到实验目的中提到的三条或三条以上内容。Linux程序设计实验指导书实验类别:课内实验 实验课程名称:Linux程序设计实验室名称:软件工程专业实验室 实验课程编号: N03140112 总 学 时:32 学 分: 2 适用专业:软件工程 先修课程:操作系统、C程序设计实验在教学培养计划中地位、作用:通过讲授Linux的操作使用、系统结构和Linux环境下的程序设计,使学生对Linux操作系统获得一个全面的认识和掌握。一方面,学生通过学习系统程序设计,能够复
8、习操作系统中的基本概念,对文件管理、进程控制有更深入的理解;另一方面,学生学会在Linux环境下工作,进一步熟悉C语言程序设计和数据结构的知识,编写进行系统维护的脚本文件和实用化的大型应用程序,如网络应用程序。同时,本课程为学生进一步学习其它后续课程(如高级操作系统、Linux内核源代码分析、嵌入式系统等)打下基础。实验一 Linux基本命令的使用1、实验目的(1)学习和掌握Linux的基本命令(2)增强学生对Linux的学习兴趣2、实验内容(1)linux的登录操作(2)常用基本命令的使用3、实验要求(1)实验前认真预习实验内容,详细了解本实验所涉及到的相关理论知识。(2)填写完整的实验报告
9、。4、实验步骤步骤1:以user_login用户身份并使用telnet登录Linux服务器,按照提示创建自己的账户和口令。 步骤2:使用新创建的用户账户和口令登录Linux系统,察看登录后的界面。 步骤3:使用pwd命令察看当前的工作目录,然后用ls命令查看当前目录下的内容,尝试使用-a,-l,-F,-A,-lF等不同选项并比较不同之处。 步骤4:在当前目录下建立一个名为test的新目录,然后将工作目录切换到test下,尝试将/etc目录下的文件passwd拷贝到该目录下(cp 源文件 目的目录)。察看当前目录下的passwd文件的属主和文件权限。步骤5:尝试向当前目录下的passwd文件和/
10、etc/passwd文件分别写入一些新内容(可使用echo “字符串” 文件的命令),看看操作能否成功,如果不能成功,请说明原因。用cat命令浏览文件password的内容,用more命令进行浏览翻页操作,再用less命令浏览文件的内容。比较这几个命令的不同之处。步骤6:用ls命令查看test下文件的权限,用mv命令更改文件password的文件名为test.txt,尝试用chown和chgrp更改文件的属主为root、组为root,看看能否成功,不成功,请说明原因。尝试用chomd将文件权限为“-rw-”。看看能否成功,不成功,请说明原因。 步骤7:用rm命令删除test目录下的所有文件,再
11、用rmdir命令删除test目录。 (想一想有没有一条命令将目录及目录下的所有文件删除,写出这条命令) 步骤8:使用ps命令查看当前系统内的进程,并利用man命令获取ps命令的参数,写出获取当前终端进程执行情况的ps命令。步骤9:使用df命令查看当前系统已安装的文件系统的空间使用情况,记录结果。步骤10:使用du命令查看用户的工作目录占用了多少空间,记录结果。 步骤11:使用free命令查看内存资源的使用情况,记录结果。实验二 Shell程序设计1、实验目的(1)Shell程序设计中变量的使用; (2)理解通道的概念并初步掌握它的使用方法; (3)掌握算术操作、字符串操作、逻辑操作、文件操作;
12、 (4)掌握if then fi、if then elif fi、case、while、for等控制语句;(5)在shell脚本中使用函数;2、实验内容(1)通过对shell程序的调试,理解变量$#,$0,$1,$2,$3,$的含义; (2)Shell顺序程序设计; (3)Shell分支程序与多分支程序设计; (4)Shell循环程序设计。3、实验要求(1)实验前认真预习实验内容,详细了解本实验所涉及到的相关理论知识。(2)填写完整的实验报告。4、 实验步骤1 vi的使用步骤1:以root用户身份登录进入Linux系统。步骤 2:启动Vi,切换到输入模式,输入一段英文:Thisiaanexer
13、cise!WeuseVitoeditit.Left,down,up,right步骤3:尝试匹配其中的一串字符,写出这命令及执行结果。匹配格式:/正则表达式元字符说明.匹配任意一个字符abc匹配方括号中的任意一个字符。可以使用-表示字符范围,如a-z0-9匹 配小写字母和阿拉伯数字。abc在方括号内开头使用符号,表示匹配除方括号中字符之外的任意字符。d匹配阿拉伯数字,等同于0-9。D匹配阿拉伯数字之外的任意字符,等同于0-9。x匹配十六进制数字,等同于0-9A-Fa-f。X匹配十六进制数字之外的任意字符,等同于0-9A-Fa-f。w匹配单词字母,等同于0-9A-Za-z_。W匹配单词字母之外的任
14、意字符,等同于0-9A-Za-z_。t匹配字符。s匹配空白字符,等同于 t。S匹配非空白字符,等同于 t。*匹配 * 字符。.匹配 . 字符。/匹配 / 字符。匹配 字符。匹配 字符。*匹配0-任意个+匹配1-任意个?匹配0-1个n,m匹配n-m个n匹配n个n,匹配n-任意个,m匹配0-m个$匹配行尾匹配行首匹配单词词尾代码:/w+s+w+$/w+s+w+/ias+步骤4:尝试替换其中的一串字符,写出这命令及执行结果。替换命令: :s/正则表达式/替换字符串/选项代码::%s/ia/is 全局替换,%表示全局:1,4s/ia/is 只替换1-4行:s/ia/is 注意当前行的问题,如果在当前行
15、进行替换会出现找不到模式的情况步骤5:尝试复制/删除其中的一行或几行文本,写出命令及执行结果。按【Esc】然后输入dd【连续两次】删除一行文本步骤6:尝试复制/删除其中的一个单词或几个字符,写出命令及执行结果。按【Esc】将光标移动到要替换的位置然后输入r再输入替换字符将第四行第一个字母1替换为d步骤7:尝试使用鼠标复制文本,写出命令及执行结果。1. 选定文本块。使用v进入可视模式,移动光标键选定内容。 2.复制的命令是y,即yank(提起) ,常用的命令如下: y 在使用v模式选定了某一块的时候,复制选定块到缓冲区用; yy 复制整行(nyy或者yny ,复制n行,n为数字); y 复制当前
16、到行头的内容; y$ 复制当前到行尾的内容; yw 复制一个word (nyw或者ynw,复制n个word,n为数字); yG 复制至档尾(nyG或者ynG,复制到第n行,例如1yG或者y1G,复制到档尾) 3. 剪切的命令是d,即delete,d与y命令基本类似,所以两个命令用法一样,包括含有数字的用法. d 剪切选定块到缓冲区; dd 剪切整行 d 剪切至行首 d$ 剪切至行尾 dw 剪切一个word dG 剪切至档尾 4. 粘贴的命令式p,即put(放下) p 小写p代表贴至游标后(下),因为游标是在具体字符的位置上,所以实际是在该字符的后面 P 大写P代表贴至游标前(上) 整行的复制粘
17、贴在游标的上(下)一行,非整行的复制则是粘贴在游标的前(后)注: 在正则表达式中,表示匹配字符串的开始位置,$表示匹配字符串的结束位置。 命令前面加数字表示重复的次数,加字母表示使用的缓冲区名称。使用英文句号.可以重复上一个命令。 在复制粘贴时,另一组常用的命令是u(撤销操作),U(撤销某一行最近所有修改),Ctrl+R(重做),这些功能主要是vim中的,vi中略有差别代码:现在尝试将1-3行进行复制1.按【Esc】键后按【v】进入可视模式,使用HJKL(左上下右)四个键选定1-3行2.按【y】复制选定的内容步骤8:尝试存盘退出操作,写出命令。:wq2.2 简单的shell程序步骤1:使用Vi
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 程序设计 实验 报告