ZIPlinux minishell小项目练习 49.45KB

mxyzhy

资源文件列表:

minishell.zip 大约有12个文件
  1. minishell/
  2. minishell/a.out 22.41KB
  3. minishell/include/
  4. minishell/include/command.h 2.22KB
  5. minishell/include/main.h 1018B
  6. minishell/include/terminal.h 666B
  7. minishell/Makefile 276B
  8. minishell/MiniShell 项目文档.docx 46.71KB
  9. minishell/src/
  10. minishell/src/command.c 12.85KB
  11. minishell/src/main.c 993B
  12. minishell/src/terminal.c 3.18KB

资源介绍:

利用Linux中IO接口实现MiniShell 项目要求: 1.进入软件后显示字符终端界面,界面中包含用户名(可以写死为linux)、操作系统名(可以写死为ubuntu)、当前所在的文件名 [linux@ubuntu:Desktop] 2.软件中支持用户输入如下命令: 1.ls ls -a ls -l ls filename ls -l filename 2.touch touch filename 3.rm rm filename 4.mkdir mkdir dirname 5.rmdir rmdir dirname 6.cd cd .. 7.cp cp src.txt dstdir 8.mv mv oldpath newpath 9.cat cat filename.txt 10.chmod chmod 0777 filename 11.ln
<link href="/image.php?url=https://csdnimg.cn/release/download_crawler_static/css/base.min.css" rel="stylesheet"/><link href="/image.php?url=https://csdnimg.cn/release/download_crawler_static/css/fancy.min.css" rel="stylesheet"/><link href="/image.php?url=https://csdnimg.cn/release/download_crawler_static/89615841/raw.css" rel="stylesheet"/><div id="sidebar" style="display: none"><div id="outline"></div></div><div class="pf w0 h0" data-page-no="1" id="pf1"><div class="pc pc1 w0 h0"><img alt="" class="bi x0 y0 w1 h1" src="/image.php?url=https://csdnimg.cn/release/download_crawler_static/89615841/bg1.jpg"/><div class="t m0 x1 h2 y1 ff1 fs0 fc0 sc0 ls0 ws0">MiniShell <span class="_ _0"> </span><span class="ff2">项目文档</span></div><div class="t m0 x1 h2 y2 ff1 fs0 fc0 sc0 ls0 ws0">1. <span class="_ _0"> </span><span class="ff2">项目需求</span></div><div class="t m0 x1 h2 y3 ff1 fs0 fc0 sc0 ls0 ws0">1.1 <span class="_ _0"> </span><span class="ff2">项目背景</span></div><div class="t m0 x1 h2 y4 ff1 fs0 fc0 sc0 ls0 ws0">MiniShell <span class="_ _0"> </span><span class="ff2">是<span class="_ _1"></span>一个<span class="_ _1"></span>简<span class="_ _1"></span>化版<span class="_ _1"></span>的命<span class="_ _1"></span>令行<span class="_ _1"></span>解释<span class="_ _1"></span>器,<span class="_ _1"></span>旨在<span class="_ _1"></span>模拟<span class="_ _1"></span></span> <span class="_ _0"> </span>Unix <span class="_ _1"></span>Shell <span class="_ _0"> </span><span class="ff2">的<span class="_ _1"></span>基</span></div><div class="t m0 x1 h2 y5 ff2 fs0 fc0 sc0 ls0 ws0">本功<span class="_ _1"></span>能。<span class="_ _1"></span>通过<span class="_ _1"></span>实现<span class="_ _1"></span><span class="ff1"> <span class="_ _0"> </span>MiniShell</span>,<span class="_ _1"></span>我们<span class="_ _1"></span>可以<span class="_ _1"></span>深入<span class="_ _1"></span>理解操<span class="_ _1"></span>作系<span class="_ _1"></span>统的<span class="_ _1"></span>命令<span class="_ _1"></span>处</div><div class="t m0 x1 h2 y6 ff2 fs0 fc0 sc0 ls0 ws0">理和文件<span class="_ _1"></span>操作机制,锻炼使<span class="_ _1"></span>用<span class="ff1"> <span class="_ _0"> </span>C <span class="_ _0"> </span></span>语言进行系<span class="_ _1"></span>统编程的能力。这<span class="_ _1"></span>个项</div><div class="t m0 x1 h2 y7 ff2 fs0 fc0 sc0 ls0 ws0">目也为学习<span class="ff1"> <span class="_ _0"> </span>Linux <span class="_ _0"> </span></span>系统编程提供了实践机会,<span class="_ _2"></span>特别是在处理文件<span class="ff1"> <span class="_ _0"> </span>I/O </span></div><div class="t m0 x1 h2 y8 ff2 fs0 fc0 sc0 ls0 ws0">和实现用户交互方面。</div><div class="t m0 x1 h2 y9 ff1 fs0 fc0 sc0 ls0 ws0">1.2 <span class="_ _0"> </span><span class="ff2">需求分析</span></div><div class="t m0 x1 h2 ya ff1 fs0 fc0 sc0 ls0 ws0">MiniShell <span class="_ _0"> </span><span class="ff2">必须具备以下功能:</span></div><div class="t m0 x1 h2 yb ff2 fs0 fc0 sc0 ls0 ws0">显示字符终端界面,包含用户名、操作系统名和当前所在目录。</div><div class="t m0 x1 h2 yc ff2 fs0 fc0 sc0 ls0 ws0">支持常见的命令,<span class="_ _3"></span>包括文件操作、<span class="_ _3"></span>目录操作、<span class="_ _3"></span>文件内容显示、<span class="_ _3"></span>权限修</div><div class="t m0 x1 h2 yd ff2 fs0 fc0 sc0 ls0 ws0">改和符号链接创建。</div><div class="t m0 x1 h2 ye ff2 fs0 fc0 sc0 ls0 ws0">记录用户输入的历史命令及其时间,并能够查看历史记录。</div><div class="t m0 x1 h2 yf ff1 fs0 fc0 sc0 ls0 ws0">2. <span class="_ _0"> </span><span class="ff2">概要设计</span></div><div class="t m0 x1 h2 y10 ff1 fs0 fc0 sc0 ls0 ws0">2.1 <span class="_ _0"> </span><span class="ff2">技术实现</span></div><div class="t m0 x1 h2 y11 ff2 fs0 fc0 sc0 ls0 ws0">为了实现<span class="ff1"> <span class="_ _0"> </span>MiniShell</span>,<span class="_ _3"></span>我将编写一个<span class="ff1"> <span class="_ _0"> </span>C <span class="_ _0"> </span></span>语言程序,<span class="_ _3"></span>分成多个模块以实</div><div class="t m0 x1 h2 y12 ff2 fs0 fc0 sc0 ls0 ws0">现不同的功能:</div><div class="t m0 x1 h2 y13 ff2 fs0 fc0 sc0 ls0 ws0">主函数:调用函数实现终端功能。</div><div class="t m0 x1 h2 y14 ff2 fs0 fc0 sc0 ls0 ws0">终端界面显示:显示终端界面和当前目录。</div></div><div class="pi" data-data='{"ctm":[1.611830,0.000000,0.000000,1.611830,0.000000,0.000000]}'></div></div>
100+评论
captcha
    类型标题大小时间
    ZIP使用python绘制爱心图案表白327B8月前
    ZIP微信小程序-商城系统带后台管理4.96MB8月前
    ZIPyolo人脸识别,树莓派23.89KB8月前
    ZIP计算机网络试题,高校精选97.63KB8月前
    ZIP爬取豆瓣电影标题数据-项目实战8-爬取豆瓣网页标题数据-ipynb格式-Python语法-用Jupyter notebook打开1.13MB8月前
    ZIP帖子所需open-test.jar和.i文件.zip22.18MB8月前
    ZIPopencv所需.i文件1.62MB8月前
    ZIPZGHJTJNJ(1998-2023年).zip358B8月前