终端到底是什么?什么是贝壳?

终端到底是什么?什么是贝壳?

我了解 Linux 终端。我还可以通过终端发出许多高级命令。但有一个简单的概念我却不清楚。

什么是终端以及它如何工作?

我了解硬件,包括CPU、RAM、硬盘等。

我了解内核,它基本上是操作系统的核心。

我知道位于内核顶部的软件。

我了解用户。

我知道用户使用终端或 GUI 向软件发出指令。(或内核?)

现在请解释一下终端和外壳的这些概念。

最好使用图形解释和简单的非技术性词语。

答案1

什么是贝壳?

简而言之,shell 是一种从键盘获取命令并将其传递给操作系统的软件。

那么 konsole、xterm 或 gnome-terminals 是 shell 吗?

不,它们被称为终端模拟器。他们打开一个 GUI 来与 shell 交互。你可以将它们视为前端到贝壳。

外壳参考

不同的贝壳

有不同的 shell,它们或多或少相同,但功能和语法不同。

伯恩外壳 所有 UNIX 系统上可用的最基本的 shell

科恩壳牌 基于 Bourne shell 并进行了增强

C壳 语法与C语言类似

重击外壳 Bourne Again Shell 结合了 Korn Shell 和 C Shell 的优点。大多数 Linux 发行版上的默认设置。

tcsh 类似于C shell

答案2

shell 是在终端中运行的程序,它读取您键入的命令并执行它们。

如今,Unix 和类 Unix 操作系统提供了几乎相同的 shell 集之间的选择,因为这些 shell 早于大多数操作系统。

如需进一步阅读,我建议Linux 中 shell 的演变 (IBM)

根据对另一个答案的评论进行编辑以添加有关外壳和终端的信息:

A终端是与人类交互的硬件外围设备,它由对用户的输出和来自用户的输入组成,换句话说就是屏幕和键盘,见链接。GUI 向您展示的是虚拟的终端。 shell 是命令行界面软件,通常是您在终端上看到的,但它不一定是 shell。您可以启动一个虚拟终端并让它vi直接运行,例如,不涉及 shell。

相关内容