欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    《操作系统原理》实验8-- Linux文件操作实践.docx

    • 资源ID:849375       资源大小:88.52KB        全文页数:10页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《操作系统原理》实验8-- Linux文件操作实践.docx

    操作系统原理实验报告实验序号:8实验项目:Linux文件操作实践学号姓名专业、班级实验地点指导教师实验时间一、实验目的及要求通过本实验的学习,掌握Linux文件系统操作的基本方法。二、实验设备(环境)及要求VMware虚拟机软件,Ubuntu系统三、实验内容与步骤1、根据教材178-181页实践LinUX文件系统操作A.创建文件joejo-virtual-Rachtne:*/ceprogram$ vim create.cjo¢jo-virtualmachte:cprogram5 gcc -o create create.c jojovirtual-Rachtnez-c-progrmS Isl.h 3.h2.h close createclose.c create.c ex-wrtte.c ftle-work.cexwrtte ftle.txt nyftlejon9jon-virtual-machine:-cprograS /createjon0jon-virtualRachtne:-/c_progran$ Isl.h 3.h close.c create.c exwrtte.c ftlework.cyftle2 openopen.c shell2.shshell3.sh shell4.shshells.sh thread2.cjo¢jo-virtual-nachte:*/ceprogran$ nyftlenyftle2 openopen.cShell2.shshell3.sh shell4.shshells.sh testftle.txttt main() (creat(,S_IRUSR|S_IXOTH);de#ir/include(利用creat创建testflle.txt)>B.删除文件jon0jonvirtualwchtre:-/c.progrRS vtn unlink.c Jon9jon-vtrtual'fwchtnc:*/c_prograR$ gcc o unlink UnItnkc jon¢jocvtrtulfMcht.rer-c-progrnS Is1 .h3.hclose.ccreate.cex-wrtte.cftle-work.c2 .hclosecreateexwrtteftle.txtnyftleJoMJOnvirtual.<ltkjocJonvtzchtfe:/c_prograM Isclose.c create.c ex-wrtte.c ftle.work.c2.h close create ex.wrtt ftle.txtnynieRyftleZ openRyftle2 OXCopen.c shetl2.shopen.c shU2.thshells.sh she114.shshell).sh shell4.shshells.shtestftXe.txt unlinkthred2.c unlink.cshells.sh unlink thread2.c unlink.c#includeutstd.h>itmai()(unlink();)(利用unlink删除testfile.txt)C.关闭文件D.打开文件jo0jon-virtual-machine:/c_program$gcc-ocloseclose.cjo0jo-virtual-machine:/c_program$Is1 .hclosecreate.cfile.txtshe113.shthread2.c2 .hclose.cex_wrttenyftleSheII4.sh3 .hcreateex_wrtte.cshe112.shshells,shjo0jon-virtual-machine:/c_program$./closejo0jon-virtual-machine:/c_program$IS1 .hclosecreate.cfile.txtshefl2.shshells.sh2 .hclose,cex_wrttenyftlesheaL13.shthread2.c3 .hcreateex-wrtte.cInyfIIe2she114.shjo0jon-virtual-machine:*/c_program$1 Sinclude2 #include.ys八ypes.h>3 #include,,./tat.11>4 ffinclude56 itmain()7 (8 ttfd;fd=open(,O_CREAT,S_IRUSRS_IXOTH);10close(fd);U)(利用OPen打开文件然后再用close关闭)E.读文件F.写文件1 /Include2 #tnclude3 #include4 #include:to.h>5 #deftneLENGTHlu()6main()7(8ttfd,le;9charstrLENGTH;10fd=ope(,O_CREATI0_RDWR.S_IRUSRIWUSR);11tf(fd)1213write(fd,fstrlen();14close(fd);15)1617fd=open(,0_RDWR);18Ien=read(fd,str,LENGTH);19strlen=7'20prntf(,str);21close(fd);22)(综合运用)2、利用以上操作编写函数,实现文件拷贝、移动操作,不可直接使用操作系统命令与函数。Ijonzubutu:/CProgram$vimcopy.cIjonzubuntu:/CProgram$gcc-ocopycopy.cjonzubuntu:/CProgram$Isclientcopy.cexa3.c-ftle.txtshelll.shshells.shclient.cexan3exa5servershell2.shuserdatacopyexam3.cexam5.cserver.cSheIl3.shHonzQubuntu:*/CProgram$./copycpfile.,txtftle2.txtfilecopysucceedjonzubuntu:/CProgram$ISclientcopy.cexam3.c-file2.txtserver.cShelI3.shclient.ce×an3e×an5file.txtshelll.shshell5.shcopyexam3.cexan5.cservershell2.shuserdataCopy函数用来复制文件Qtnclude<systypes.h>#includesstdt.L-/include'一rI.h>/Include,;UntStd.h>einclude<strig.h>#include<stdlo.h>ffdeftneBUFFSIZE»096mai(rtargc,Cha-COn*argv)intfdsrc,fdtgt,siz;ttop三;charbufBUFFSIZE;If(!strcmp(argv,)op=;if(!strcmp(argv,)op=;if(argc!=op=)printf(,argv);return;)fdsrc=ope(argv,O_RDONLY);if(fdsrc<)printf(i,3n);return;)fdtgtscreat(argv,S_IRWXU);if(fdtgt<)prtntf();return;While(StZ=read(fdsrc,buf,BUFFSIZE)if(write(fdtgt,buf,siz)!=stz)prttf();return;if(siz<)prtntf();return;)if(op=)prttf();else(close(fdsrc);If(unltk(argv)pritf();return)elseprintf();)止畴内核自动关闭文件:return程序源代码如图Jonzgubuntu:CProgranSvimmove.cjonzubuntu:-/CProgranSgcc-onovemove.cjonzgubutu:-/CProgramSISclientcopy.cexan3.c-ftle2.txtnove.cshelll.shshells.shclient.cexan3exan5ftle.txtserverSheVl2.shuserdataxshell3.shuser37user41user46copyexa3.ce×an5.cmovejonz0ubuntu:/CProgram$IS./userdata/userluserl4userl9user23user28server.user32user5userluserl5user2user24ser29user33user38user42user47USe6userlluser16user2user25user3user34ser39user43ser48user7userl2user17user21user26user3user35user4user44user49user8userl3userl8user22user27user31user36user46user45usersuser9jonzeubuntu:CProgra11S.noveftle.txt./userdata/IMVftle.txtt。./userdata/FatlUre移动失败。仍存在问题四、分析与讨论1.inux文件系统管理有何特点?-将所有东西都变成文件来管理,包括设备等。同时送迎文件本身来识别,而不是通过文件的后缀名等来识别。五、教师评语成绩签名:日期:W1 .文件复制函数源代码#include<systypes.h>#include<sysstat.h>#include<fcntl.h>#include<unistd.h>#include<string.h>#include<stdio.h>#defineBUFFSIZE4096intmain(intargc,charconst*argv)intfdsrc,fdtgt,siz;intop=0;charbufBUFFSIZE;if(!strcmp(argvl,cp)op=1;if(!strcmp(argvl,nmvu)op=2;if(argc!=4op=0)Printf("usage:%Smv/cpsrcfiletgtfilenu,argvO);return0;)fdsrc=open(argv2,O_RDONLY);if(fdsrc<O)printf(',srcfileopenfailedn");return1;)fdtgt=creat(argv3,S_IRWXU);if(fdtgt<O)printf(tgtfilecreatfailedn);return2;while(siz=read(fdsrc,buf,BUFFSIZE)if(write(fdtgt,buf,siz)!=siz)printf(,writefailedn");return3;)if(siz<O)printf(',readfailednu);return4;)if(op=1)printf(filecopysucceednn);elseclose(fdsrc);if(unlink(argv2)printf("srcfiledeletefailedn);return5;)elseprintf("filemovesucceedn");)进程终止畤内核自动关闭文件。return0;)2 .文件移动函数源代码#include<unistd.h>#include<stdio.h>#include<stdlib.h>#include<string.h>#defineSIZE250intmain(intargc,char*argv)(characBuffSIZE;if(argc<3)(PrirHf("Usage:%s<SourceFile><DestinationDirectory>n",argv0);exit(EXIT.FAILURE);1if(access(argvlI,F_OK)!=0)printf(',SourseFile:%snotexixted!n",argvI);exit(EXIT,FAILURE);strcat(acBuff,argv2);strcat(acBuff,argvl);if(rename(argv1J,acBuff)!=O)(printf(',Mv%sto%sFailuren",argv1,argv2);exit(EXIT.FAILURE);1else(printf(',Mv%sto%sSucsessn'argv1J,argv2);exit(EX!T_SUCCESS);

    注意事项

    本文(《操作系统原理》实验8-- Linux文件操作实践.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开