为什么用“shell”这个词来描述命令行界面?

Eri*_*son 33 shell terminology

我对“壳”这个词很好奇。我想我知道它是什么(尽管“外壳”和“终端”之间的区别仍然模糊)但是为什么选择“外壳”这个词来描述这种类型的程序?

这似乎似乎不重要,但通常在选择Mysties Me的情况下,它指出了我的理解差距。

don*_*lly 23

用一个坚果来类比:外面是壳,里面是内核。


dra*_*ath 10

来自http://en.wikipedia.org/wiki/Thompson_shell#History

“命令行解释器的名称“shell”以及使 shell 成为操作系统内核之外的用户程序的概念是在 Unix 的前身 Multics 中引入的。

在维基百科兔子洞的更深处发现:“Louis Pouzin,为 Multics 中使用的命令语言引入了术语 shell”

我还没有完整阅读,但他在这里的写作可能会给你答案:http : //www.multicians.org/shell.html

编辑:确实没有解释。他只是“创造”了这个词。不是你希望的有趣故事,是吗?

  • 不满意,但有时就是这样。 (3认同)

use*_*own 10

也许是因为它是表面,对用户屏蔽了内部内核?因此,内核将是贝壳内的珍珠。


jas*_*yan 8

Multics的词汇可以提供线索。外壳定义如下:

Multics 命令处理器曾经被称为 shell。该程序通过命令行传递给侦听器执行;它将该行解析为命令名称和参数,定位命令并启动它,并使用 PL/I 字符串的参数调用命令程序。通过调用 cu_$set_cp(见缩写),用用户提供的程序替换默认的系统提供的 shell 很简单。Unix shell 在 Multics 意义上包括 shell 和 listener 的概念。

shell听者之间的关系在词源上和隐喻上都是有意义的[1]。

[1]“既然贝壳是权柄、言语、听觉的象征,也就是预言的象征……”