Linux 软件编程学习第五 六天之minishell小项目

利用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

ln -s file.txt a.txt

ln file.txt b.txt

12.find

find filepath -name filename

3.minishell记录了用户输入命令的时间和内容,可以支持用户使用history命令查看用户输入的历史命令及其输入的时间

history

2024-08-03 13:51:30\]history 项目要求: 1.编写项目文档 1.项目需求 项目背景 描述实现该原因及背景 需求分析 分析项目要求(不涉及技术) 概要设计 根据需求设计相关技术实现功能 软件框图:各个模块之间的功能及其关系 模块设计 具体每个功能的模块设计 流程图:每个模块实现功能的具体步骤及方式 2.根据代码功能,将代码划分成若干个文件,并使用多文件编程来实现代码 main.c main.h terminal.c terminal.h command.c command.h Makefile 编写文档 -\> 分析整体软件设计及实现 -\> 编写代码 -\> 调试代码 -\> 答辩 ![](https://i-blog.csdnimg.cn/direct/6d242a7b66b14a3f88e4e7c70a93354f.png)

相关推荐
nonono1 分钟前
深度学习——SETR(Segmentation Transformer)学习(2020.12)
深度学习·学习·transformer
项目工程打工马2 分钟前
Ubuntu 上 Redis 安装和使用详细指南(新手友好版)
linux·redis·ubuntu
醉酒柴柴7 分钟前
word创建样式以后应用于所有新文件
开发语言·学习·c#·word
董董灿是个攻城狮8 分钟前
大模型连载8:词向量如何表示近义词?
人工智能·python·算法·机器学习
Jasmine_llq12 分钟前
《B4001 [GESP202406 一级] 立方数》
算法·单输入处理·整数算术运算·立方数枚举验证算法(核心逻辑)·循环终止优化算法·状态标记算法·三元运算符输出
蛋白界小百灵21 分钟前
【卡梅德】生物带您学习分子钓鱼术:噬菌体展示技术实验操作解析
学习
芸忻21 分钟前
day 13 第六章 二叉树 part01代码随想录算法训练营71期
数据结构·算法
2401_9001515423 分钟前
C++中的桥接模式
开发语言·c++·算法
糖果店的幽灵25 分钟前
【大模型】大模型学习总结之机器学习 - 1.基础知识
人工智能·学习·机器学习
生活很暖很治愈25 分钟前
Linux——HTTP协议
linux·服务器·c++·网络协议·ubuntu·http