所以我读了很多书,但仍然感到困惑。 BASH是专门用于Unix的,而shell,终端,命令行都是“通用术语”吗?例如,如果我说“ shell”,还不确定我是专门指Linux shell还是MacOS shell还是其他操作系统的shell,对吗?另一方面,如果我说BASH,那么我只是在谈论Unix。对?还要非常深入地解释它们之间的关系,并且希望它们之间有一点点差异。
答案 0 :(得分:0)
我通常使用术语“外壳”来引用任何命令行界面,因此在Windows中我将DOS提示符称为外壳,在MacOS和Linux中我将bash称为外壳。尽管我认为bash shell的MacOS版本与Unix / Linux bash不能100%相同。
Bash代表Bourne Again Shell,通常是当今Linux系统中的默认Shell,但是Linux中还有大量其他Shell,例如Korn shell(ksh),Debian Almquist Shell(dash),Z shell(zsh)。还有很多。
可以在这里找到壳的比较:Comparison of command shells
答案 1 :(得分:-1)
终端是计算机上的软件应用程序,用于接收输入并显示输出。
人们通常但不正确地互换使用终端和外壳。实际的定义将外壳定义为命令行解释器,实质上是将您提供给终端的输入进行翻译的工具。因此外壳是终端的一部分。
同样,命令行是解释您的输入的内容,也是shell + terminal的一部分。这是文本输入框。
Bash是shell的示例。您可能已经在Linux或Mac计算机上看到它。不同的外壳解释不同。