- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 4 章 文件的操作 本章重点 Linux系统的文件属性 不带缓存的文件I/O操作 基于流的文件I/O操作 特殊文件的操作 4.1 Linux系统文件的属性 Linux系统中,文件的准确定义是不包含有任何其他结构的字符流。 Linux系统提供的文件系统,是树形层次结构系统。 Linux支持多种文件系统,最常用的文件系统是ext2系统。 Linux系统的文件属性主要包括文件类型和文件权限两个方面。 4.1.1 Linux文件类型 Linux下最常见的文件类型有5种:普通文件、目录文件、链接文件、管道文件和设备文件。 例4.1:设计一个程序,要求列出当前目录下的文件信息,以及系统“/dev/sda1”和“/dev/lp0”的文件信息。 编辑源程序代码 : 4.1.1 Linux文件类型 Linux系统的主要文件类型: 4.1.2 Linux文件权限 对于Linux系统中的文件来说,它的权限可以分为4种:可读取(Readable)、可写入(Writable)、可执行(eXecute)和无权限,分别用r、w、x和-表示。 Linux系统按文件所有者、文件所有者同组用户和其它用户三类规定不同的文件访问权限。 显示的作为权限的10个字符,可分为四部分: 第一位:一般表示文件类型。 第二位到第四位(第一组rwx):表示文件所有者的访问权限。 第五位到第七位(第二组rwx):表示文件所有者同组用户的访问权限。 第八位到第十位(第三组rwx):表示其他用户的访问权限。 4.1.2 Linux文件权限 例4.2:设计一个程序,要求把系统中“/etc”目录下的passwd文件权限,设置成文件所有者可读可写,所有其他用户为只读权限。 源程序代码: 4.1.2 Linux文件权限 例4.3:设计一个程序,要求设置系统文件与目录的权限掩码。 源程序代码 : 4.1.2 Linux文件权限 chmod函数说明 4.1.2 Linux文件权限 umask函数说明 4.1.3 Linux文件的其他属性 文件还有创建时间,大小等其他的属性。 在Linux系统中,定义了stat结构体来存放这些信息。 4.1.3 Linux文件的其他属性 例4.4:设计一个程序,应用系统函数stat获取系统中“/etc”目录下的passwd文件的大小。 源程序代码: 4.1.3 Linux文件的其他属性 stat函数说明 4.2 不带缓存的文件I/O操作 Linux系统中,基于文件描述符的文件操作主要有:不带缓存的文件I/O操作和带缓存的文件流I/O操作。 不带缓存的文件I/O操作,又称系统调用I/O操作,符合POSIX标准,设计的程序能在兼容POSIX标准的系统间方便地移植。 不带缓存的文件I/O操作用到的主要函数: 4.2.1 文件的创建 例4.5:设计一个程序,要求在“/home”目录下创建一个名称为“4-5file”的文件,并且把此文件的权限设置为所有者具有只读权限,最后显示此文件的信息。 源程序代码 : 4.2.1 文件的创建 creat函数说明 4.2.2 文件的打开和关闭 例4.6:设计一个程序,要求在“/home”下以可读写方式打开一个名为“4-6file”的文件,如果该文件不存在,则创建此文件,如果存在,将文件清空后关闭。 源程序代码: 4.2.2 文件的打开和关闭 open函数说明 4.2.2 文件的打开和关闭 close函数说明 4.2.3 文件的读写操作 文件读写操作中,经常用到的函数是read、write和lseek。 例4.7:设计一个C程序,完成文件的复制工作。要求通过使用read函数和write函数复制“/etc/passwd”文件到“4-7test”文件中,文件名当程序运行时从键盘键入。 源程序代码 : 4.2.3 文件的读写操作 Read、write函数说明 4.2.4 文件上锁 Linux系统中,给文件上锁主要有建议性锁和强制性锁。给文件加建议性锁的是flock函数,给文件加强制性锁的是fcntl函数。 一般情况下,系统使用强制性锁,而很少使用建议性锁。当一个文件被上锁后,内核将阻止其他任何文件对其进行读写操作。 例4.8:设计一个程序,要求在“/home”下打开一个名为“4-8file”的文件,如果该文件不存在,则创建此文件。打开后对其加上强制性的写入锁,然后释放写入锁。 源程序代码 : 4.2.4 文件上锁 4.2.4 文件上锁 flock、fcntl函数说明 4.3 带缓存的流文件I/O操作 带缓存的流文件I/O操作,是在内存开辟一个“缓存区”,为程序中的每一个文件使用。 内存“缓存区”的大小,影响着实际操作外存的次数,内存“缓存区”越大,则操作外存的次数
您可能关注的文档
- _激励员工详解.ppt
- 2015中考历史冲刺二轮复习专题五民族团结和国家统一详解.ppt
- 2015中考历史第一轮复习:第四单元复习提纲详解.ppt
- _交通运输方式详解.ppt
- 2015中考历史复习二第四单元中华民族的抗日战争详解.ppt
- 2015中考热点之依法治国详解.ppt
- _旅游者出入境管理法律法规详解.ppt
- 2015中考散文阅读复习专题详解.ppt
- _媒介的功能详解.ppt
- 2015中考社会思品内容补充详解.ppt
- 20141124旭辉浦江国际年度方案详解.ppt
- 《linux软件工程师(C语言)实用》第5章详解.ppt
- 20141128-陈尚君(复旦中文系教授中国唐代文学学会会长)中国诗歌史上的双子星座——李白与杜甫详解.ppt
- 《linux软件工程师(C语言)实用》第6章详解.ppt
- 《linux软件工程师(C语言)实用》第7章详解.ppt
- 《linux软件工程师(C语言)实用》第8章详解.ppt
- 20141202张钧老师-中层领导干部的沟通协调能力详解.ppt
- 20141212张国玉老师-领导角色转变与领导行为优化详解.ppt
- 《Period_2_Language_Study》导学案详解.ppt
- 20142014年思想品德详解.ppt
最近下载
- 2025《几何画板在数学教学中的应用研究文献综述》1800字.docx VIP
- 湘美版高中美术绘画 奏响色彩的旋律(共28张PPT)(内嵌视频).pptx VIP
- 规范《DLT555-2004-气体绝缘金属封闭开关设备现场耐压及绝缘试验导则》.pdf VIP
- 2025巧用几何画板开拓数学思维作一个角等于已知角教学思考.docx VIP
- 标日初级第1课练习.doc VIP
- Unit4EatwellSectionA2a-2e英文版教案人教版(2024)七年级英语下册.docx
- 教学经验分享.ppt VIP
- 2025届高考数学复习备考策略课件.pptx VIP
- 2013年考研英语一真题解析.pdf VIP
- 第2课 教师节快乐(教学设计)2025二年级上册道德与法治 - 副本.docx
文档评论(0)