码迷,mamicode.com
首页 > 系统相关 > 详细

linux 模仿shell操作

时间:2015-04-13 06:56:15      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:

  linux的文件系统,是把硬盘空间格式化为若干node和block数据块,一般文件的创建,目录的创建,都会占用一个node,如果创建的是文件,具体的数据保存在若干block数据块中,node记录数据块的号码,所有的node和block在文件系统中都已经编号好;如果创建的是目录,会占用一个node,一个block,block中记录着该目录中所有的文件名,block号码记录在node中。

  根据linux文件系统的大体结构,用文件的方式,采用C++语言来模拟一些在shell中执行的命令:cd、mkdir、touch、clear、vim、cat、ls

  工程结构:

  1、node的模拟类文件:node.cpp node.h

  2、block的模拟类文件:block.cpp block.h

  3、权限的模拟类文件:authority.cpp authority.h

  4、shell模拟类文件:shell.cpp shell.h

  5、初始化类:init.cpp init.h

  6、工程启动文件:start.cpp

  命令目录:

  cat:  cat.cpp cat.h main.cpp makefile

  ls:  ls.cpp ls.h  main.cpp makefile

  mkdir:  mkdir.cpp mkdir.h main.cpp makefile

  touch:  touch.cpp touch.h main.cpp makefile

  rm:  rm.cpp rm.h main.cpp makefile

  cd:  cd.cpp cd.h main.cpp makefile

  vim:  vim.cpp vim.h main.cpp makefile

  具体的代码在博客文件中,名称是shellModel.tar,代码粗糙,自己为了加深对linux文件系统的认识写的模拟小工程!

linux 模仿shell操作

标签:

原文地址:http://www.cnblogs.com/q-z-c-ye/p/4421203.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!