这可能听起来像一个愚蠢的问题,但我很难明确区分shell(如Bourne或bash)和GNOME中的Terminal应用程序。我意识到两者完全不同,但我似乎无法找到用文字书写的明确答案。谁能清楚地区分两者?
这可能听起来像一个愚蠢的问题,但我很难明确区分shell(如Bourne或bash)和GNOME中的Terminal应用程序。我意识到两者完全不同,但我似乎无法找到用文字书写的明确答案。谁能清楚地区分两者?
Answers:
shell是一个典型的Unix程序。它从标准输入读取命令并在标准输出上打印。这很简单,也很好。
要点是:在图形环境(如GNOME或KDE)中,程序不能直接在桌面上编写文本。如果程序可以,这将很快变得混乱和混乱。因此,您需要一个程序,提供其他程序可以写入其文本的空间。该程序还接受来自用户的击键并将它们转换为字节序列,因为这是许多程序(命令行,基于文本,而不是GUI)所期望的。这一切都是GNOME终端应用程序的工作。
所以你有shell(可能是bash),并且它周围是GNOME终端。要查看GNOME终端到底能运行什么(Alt + F2)gnome-terminal
,xterm
以及rxvt
它们之间的区别,看看它们的不同之处以及它们的共同点。
我想你真正问的是控制台和终端应用程序之间的区别是什么xterm
?
如果是这样,控制台是机器本地的,只能有一个控制台。控制台的输出/dev/console
通常指向您的显示器。另一方面,终端实际上是一个终端模拟器,它可以追溯到大型机与整个房间一样大的时代,并且用户可以与远离大型机的哑终端进行交互。终端将通过串行线路将终端命令发送到主机以与其进行交互。现在有一天,我们仍然使用终端,但它们被模拟,因此我们可以使用多个(每个都与伪tty绑定/dev/pts#
),我们甚至可以远程使用它们并通过互联网上的加密SSH通道转发它们的连接。
控制台和终端应用程序都会在登录时调用您的shell。
终端本质上是一个窗口中的模拟shell。
如果你想看到真正的shell没有终端,点击Ctrl+ Alt+ F1和Ctrl+ Alt+ F8返回图形界面。