TL:DR

Shell - 与内核通信的输入。执行命令的地方。

终端 - 它是运行 shell 的程序。例如 Gnome 终端、xTerm、iTerm2。

控制台或 CLI(命令行界面)- 用于指代终端 + shell 或 tty 控制台的抽象。

外壳

[运行 Bash shell 的终端 Gnome-Terminal 的图像。](https://res.cloudinary.com/practicaldev/image/fetch/s--3j0SdE67--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws .com/i/dbdhi9hmxuo43wniznwe.png)

它是一个用于处理命令并带来相同结果的程序。基本上,它以一种更抽象、更少底层的方式与操作系统内核交互。

终端

[旧 LSI 终端(物理终端)的图像](https://res.cloudinary.com/practicaldev/image/fetch/s--gF37kB0V--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/ https://dev-to-uploads.s3.amazonaws.com/i/m2utb6960htf4lnrb45b.png)

它是一个运行 shell 的程序。过去,它们是连接到远程计算机的处理能力最小的设备。为了区分,只需记住终端表示某事的终点,例如,在向计算机输入和输出数据的情况下。

控制台或 CLI(命令行)

[带有几十个小按钮的飞机控制台照片](https://res.cloudinary.com/practicaldev/image/fetch/s--cj5Eo2Ok--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880 / https://dev-to-uploads.s3.amazonaws.com/i/lz3b44d44avgvwpczlqg.png)

这些是表示使用终端+shell 的抽象。 Linux 控制台还可以指示终端,默认为 6 个,由内核直接实现。我们可以使用快捷键 CTRL + ALT + F/n 访问它们,例如 /dev/tty1 可以使用 CTRL + ALT + F1 访问,而快捷键 CTRL + ALT + F7 可以让您回到图形模式。

奖金 :)

让我们了解 Login Shell 与 Interactive Shell 与 Non-Interactive Shell 之间的区别。

登录外壳

它是用于登录的外壳。例如,它可以通过终端或 ssh 访问。它运行最少的配置文件,因此我们可以使用该系统。另一个示例是您访问控制台 1 或 /dev/tty1,如上面的示例所示。

交互式外壳

它是您运行的 shell,例如登录后,如 bash。然后你问我:“哦,但我在登录后没有执行任何操作,我是在登录还是交互式 shell 中?”,答案是你在登录/交互式 shell 中。另一个例子是打开一个新终端。

非交互式外壳

它是一个没有用户交互的外壳。目前很难找到并且不适合我们的场景。

今天就到这里啦!

感谢您的访问,留下您的喜欢并关注有关系统开发的新文章。

@feiler 没有推特

了解更多

https://askubuntu.com/questions/506510/what-is-the-difference-between-terminal-console-shell-and-command-line

https://stackoverflow.com/questions/18186929/what-are-the-differences-between-a-login-shell-and-interactive-shell

Logo

更多推荐