Linux程序设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Linux程序设计课程简介和教学大纲格式
课程代码:21188100 课程名称:Linux程序设计
学分: 2.0 周学时总48学时(短学期)
面向对象:计算机科学与技术、软件工程数字媒体专业,三年级学生
预修课程要求:程序设计类课程
一、课程介绍(100-150字)
(一)中文简介
本课程主要介绍Linux操作系统的安装、使用和管理。包括Linux的文件和文件系统结构,进程概念和管理,文件安全和共享,I/O重定向和管道,以及各种实用软件的使用,shell 程序设计,Linux系统程序设计。
(二)英文简介
This course introduces the Linux operating system installation、use and administration. Include Files and File System Structure,Process concept and administration ,File Security and File Sharing, I/O Redirection and Piping ,And the use of a variety of utility software , shell Programming, Introductory Linux system Programming.
二、教学目标
(一) 学习目标
本课程的目的是使学生熟悉Linux系统环境,通过本课程的学习能够使用、管理和维护Linux系统,掌握shell程序设计和Linux系统程序设计基本方法。本课程为学习“操作系统原理”和“操作系统分析及实验”课打下基础。
(二)可测量结果
通过本课程的学习能达以下目标:
1.了解Linux操作系统,学习并领会自由软件(Free Software)的思想和文化;
2.掌握Linux操作系统的安装;
3.掌握linux的文件、进程概念,管道及I/O重定向;
4.掌握linux系统常用命令、实用程序的使用和管理,熟悉Linux下各种工具软件的使
用;
5.了解Linux环境下开发环境和桌面系统;
6.了解shell编程,掌握基本的shell程序设计;
7.Linux环境下的API编程以及Linux的系统调用。
三、课程要求
(一)授课方式与要求
短学期课程时间为两周,本课程讲课课时数为20学时,其余时间为学时独立完成4个大实验。任课教师或助教指导学生完成实验内容。
实验内容中没有安排Linux操作系统的安装,要求学生自己去做安装的实验,能独立完成Linux的安装工作。
本课程学生可以选择做难度较大的附加题,附加题可以替换实验1-4所有的必做题。
学生完成实验后要撰写实验报告,并以电子版形式提交到课程网站。要求学生在实验报告中,提交源程序、实验过程中的截图和运行结果等。
(二)考试评分与建议
短学期课程不进行书面考试,本课程评分依据是学生完成的实验结果,本课程有4个大实验,要求学生独立完成。
课程实验报告占85%,平时成绩占15%。
四、教学安排
(一)教学内容
第1章Linux的概述、安装(2学时)
了解Linux操作系统的历史,GNU/Linux操作系统构成、发展,了解开源软件,掌握Linux系统的安装。
1.1 Linux操作系统和开源软件
1.2 Linux的安装
第2章Linux基础(1学时)
了解Linux操作系统的结构和主要组成部分。掌握Linux系统登录和退出过程。了解Linux shell,shell的元字符,内部命令和外部命令。并且学习一些简单常用的Linux命令。
2.1 登录和退出
2.2 Linux的shell
2.3 shell的一些基本命令
2.4 文本编辑器
第3章Linux文件管理操作(1学时)
了解Linux系统的文件类型,Linux文件系统的目录结构和一些相关术语。掌握如何创建和删除目录,如何在文件系统中移动目录,如何使用路径名来访问位于不同目录下的文件。掌握Linux下针对普通文件操作工具,一些创建和操作文件的命令。
3.1 文件类型
3.2 文件系统目录结构
3.3 目录操作的基本命令
3.4 文件操作的基本命令
3.5 显示字符串echo
3.6 命令行中使用扩展符
第4章高级文件管理(1学时)
学习压缩、解压和打包文件命令,学习如何排序文本文件,如何搜索文件或目录,如何查找文本文件的内容,如何搜索某个Linux命令存放在何处。学习使用gzip、gunzip、sort、find、where、which、grep、rpm等命令
4.1 正则表达式
4.2 排序文件
4.3 查找文件
4.4 搜索文件内容
4.5命令记录
4.6 压缩文件、解压缩文件与打包文件
4.7 RPM包管理
第5章文件权限与文件共享(1学时)
主要介绍Linux的文件访问权限,用户的类型和文件访问权限的类型;学习如何确定一个文件的访问权限;如何设置和改变一个文件的访问权限;如何在文件或目录的创建时设置缺省访问权限。介绍硬链接、符号链接,学习使用chmod、ln等命令
5.1 存取权限
5.2 改变文件的存取权限
5.3 特殊权限位SUID、SGID、Sticky
5.4 硬链接
5.5符号链接
第6章Linux进程(2学时)
讨论Linux进程的属性。学习理解Linux的前台进程、后台进程及守护进程。学习理解Linux命令的顺序执行和并发执行。学习使用挂起进程操作和终止进程操作,了解系统中Linux进程的层次结构。学习使用ps、kill、fg、bg、top、pstree等命令
6.1进程的属性
6.2 进程的终止
6.3 进程和作业控制
6.4命令行中使用操作符
6.5 Linux系统启动和进程层次结构
6.6 开机和关机设定
第7章管道和重定向(1学时)
学习使用Linux的I/O重定向操作和管道操作。学习使用|、<、>、tee等命令
7.1 输入重定向
7.2 输出重定向
7.3 使用文件描述符
7.4组合使用输入和输出重定向
7.5 管道(pipe)
第8章Bourn Again Shell编程(6学时)
学习bash基本概念、bash变量,bash脚本令行参数传递、脚本命令替换的概念,bash 脚本的基本语句规则。掌握bash几个重要的高级特性,包括数值数据处理、数组处理、here