linux程序设计——linux的文件及目录操作

linux程序设计——linux的文件及目录操作

ID:19975802

大小:426.00 KB

页数:5页

时间:2018-10-08

linux程序设计——linux的文件及目录操作_第1页
linux程序设计——linux的文件及目录操作_第2页
linux程序设计——linux的文件及目录操作_第3页
linux程序设计——linux的文件及目录操作_第4页
linux程序设计——linux的文件及目录操作_第5页
资源描述:

《linux程序设计——linux的文件及目录操作》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、昆明理工大学信息工程与自动化学院学生上机报告(201—201学年第学期)课程名称:Linux程序设计开课实验室:时间:年月日年级、专业、班学号姓名成绩实验项目名称Linux的文件及目录操作指导教师教师评语该同学是否了解相关理论:A.了解□  B.基本了解□ C.不了解□该同学的动手能力:A.强 □B.中等□C.差□该同学的上机是否达到要求:A.达到□ B.基本达到□ C.未达到□上机实验报告是否规范:A.规范□ B.基本规范□ C.不规范□上机实验过程是否详细记录:A.详细□ B.一般□ C.没有□注:5个A为优4个A为良3个A为及格其

2、余为不及格。教师签名:年月日一、上机目的1、熟悉linux编辑界面2、了解和掌握linux中文件、目录及相关操作3、掌握目录的扫描、创建、和删除等。二、相关技术阐述1、linux文件结构文件结构是文件存放在磁盘等存贮设备上的组织方法。主要体现在对文件和目录的组织上。目录提供了管理文件的一个方便而有效的途径。linux使用标准的目录结构,在安装的时候,安装程序就已经为用户创建了文件系统和完整而固定的目录组成形式,并指定了每个目录的作用和其中的文件类型。2、linux采用的是树型结构。最上层是根目录,其他的所有目录都是从根目录出发而生成的。

3、微软的DOS和windows也是采用树型结构,但是在DOS和windows中这样的树型结构的根是磁盘分区的盘符,有几个分区就有几个树型结构,他们之间的关系是并列的。但是在linux中,无论操作系统管理几个磁盘分区,这样的目录树只有一个。从结构上讲,各个磁盘分区上的树型目录不一定是并列的。3、linux文件系统文件系统指文件存在的物理空间,linux系统中每个分区都是一个文件系统,都有自己的目录层次结构。linux会将这些分属不同分区的、单独的文件系统按一定的方式形成系统的总的目录层次结构。一个操作系统的运行离不开对文件的操作,因此必然要

4、拥有并维护自己的文件系统。linux文件系统使用索引节点来记录文件信息,作用像windows的文件分配表。索引节点是一个结构,它包含了一个文件的长度、创建及修改时间、权限、所属关系、磁盘中的位置等信息。一个文件系统维护了一个索引节点的数组,每个文件或目录都与索引节点数组中的唯一一个元素对应。系统给每个索引节点分配了一个号码,也就是该节点在数组中的索引号,称为索引节点号。linux文件系统将文件索引节点号和文件名同时保存在目录中。所以,目录只是将文件的名称和它的索引节点号结合在一起的一张表,目录中每一对文件名称和索引节点号称为一个连接。对

5、于一个文件来说有唯一的索引节点号与之对应,对于一个索引节点号,却可以有多个文件名与之对应。因此,在磁盘上的同一个文件可以通过不同的路径去访问它。三、所用软件系统Ubuntu,term,vi编辑器、gcc编译器四、源代码或上机步骤说明:此次试验是用Linux函数中的closedir函数,完成一个目录遍历搜索的程序代码:#include#include#include#include#include#includevoi

6、dprintdir(char*dir,intdepth){DIR*dp;structdirent*entry;structstatstatbuf;if((dp=opendir(dir))==NULL){fprintf(stderr,"can'topendirectory:%s",dir);return;}chdir(dir);while((entry=readdir(dp))!=NULL){lstat(entry->d_name,&statbuf);if(S_ISDIR(statbuf.st_mode)){/*Foundadirec

7、tory,butignore.and..*/if(strcmp(".",entry->d_name)==0

8、

9、strcmp("..",entry->d_name)==0)continue;printf("%*s%s/",depth,"",entry->d_name);/*recurseatanewindentlevel*/printdir(entry->d_name,depth+4);}elseprintf("%*s%s",depth,"",entry->d_name);}chdir("..");closedir(dp);}in

10、tmain(){printf("Directoryscanof/home:");printdir("/home",0);printf("done.");exit(0);}这个程序扫描了Home目录,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。