构建一个自定义的shell

时间:2015-01-23 20:16:44

标签: linux bash shell

我在Minix中使用C构建shell。这是我的操作系统实验室的家庭作业。我的想法是构建一个类似shell的bash(使用fork()和exec()),它将拥有它自己的环境路径,一些附加功能等。(当然我将使用bash运行它。)< / p>

所以现在在我的情况下,我是shell的新手。用户在bash中使用最多的基本功能是什么。我不需要先进的功能。我想知道的是,什么类型的基本实现应该包含在shell中。

NB。我不是要求任何代码。无需发布大资源的任何链接。分享您的想法,解释或建议。如果您有任何关于此的教程链接,您可以分享。提前谢谢。

1 个答案:

答案 0 :(得分:2)

shell的最低功能:

  • 为用户生成一个进程。
  • 代表正在运行的进程接受来自用户的输入。将正在运行的进程的输出中继到用户。
  • 保留shell将查看的目录列表,以查找用户希望执行的进程(即大多数其他shell的PATH变量)。允许用户查看和修改此目录库存。
  • 提供终止正在运行的进程的机制。