- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
linu二级文件管理系统
操作系统课程设计报告班 级:******学 号:******姓 名:******指导老师:******设计题目:二级文件管理系统日 期:2013年1月摘要:本系统是基于linux平台运行在终端上的虚拟二级文件管理系统。模拟真正的文件管理系统,并采用用户登录机制对文件和文件夹进行创建,修改,删除的操作。对于文件夹而言,可以进行创建删除的操作;对于文件而言,可以创建,修改,删除。删除文件夹时,同时删除相应文件夹下的文件。采用用户登录使得用户管理文件更方便,并形成了二级的文件管理模式。关键词:用户登录,文件管理。一.设计任务1.1设计任务虚拟二级文件管理系统,采用用户登录机制,可以查看文件信息,管理文件及文件夹。二.设计方案 2.1系统总体设计方案2.1.1功能设计1.使用如下命令对文件和文件夹进行管理dir : 列出所有文件信息cd - : 列出文件夹下的文件和子文件夹cfile : 创建新文件cfloder :创建新文件夹read :读文件内容 write :重写文件内容 deli :删除文件delo : 删除文件夹,若有子文件,一并删除exit :退出系统2.创建新用户2.1.2结构设计本系统基于linux平台,采用过程性语言C语言实现,使用结构体表现如下数据结构。1.用户数据名称数据类型数据长度userNamechar[]20pwdchar[]10struct user{char name[20];charpwd[10];//struct folder *userFolder;}firstUser[MAXUSER];2.文件夹数据名称数据类型数据长度关联数据folderNamechar[]10无folderOwnerchar[]20user.userNameparentFolderchar[]10folderNamenext*foldersizeof(folder)folderstruct folder{char folderOwner[Fname];//所属用户charparentFolder[Fname];char folderName[Fname];//文件夹名称struct folder *next;};3.文件数据名称数据类型数据长度关联数据fileNamechar[]10无filefolderchar[]10folderNamefileLengthint无无fileContentchar[]1024无next*filesizeof(file)filestruct file{charfileName[Fname];intfileLength;charfileFolder[Fname];charfContent[FLENGTH];struct file *next;};2.1.3实现算法设计char* login();//用户登录函数void createUser(); //创建新用户void writefile(char[],char[]);//向文件中存入信息:用户信息 或文件信息void writefile1(char[],char[],char[]);void init();//初始化char*v(char,char[],char); //字符串处理函数 截取字符串中的一部分char* ReplaceString(const char*,const char*,const char*);char* readfile(char[]);//从文件中读取数据void createFile(char[],struct file*);//创建文件所属文件夹,链表void createFolder(char[],struct folder*,char[]);//创建文件夹 所属用户struct file* initFile();//初始化文件struct folder* initFolder();//初始化文件夹void deleteFile(char[],char[]);//参数为文件名,文件夹名voiddeleteFolder(char[],char[]);void function(char[]);//参数为当前用户名void dirFile();//列出文件信息voiddirFolder(char[]);三.实现原理3.1数据实现3.1.1用户本系统最大用户数量为5,将用户信息保存在文件user中,通过init()函数将用户信息赋给user[]数组。3.1.2文件夹设定头指针,在保存文件夹信息的文件folder中读取数据,通过initFloder()赋值给文件夹链表。3.1.3文件与文件夹类似,在保存文件信息的文
文档评论(0)