在Windows系统中,我们有命令提示符,而在Linux系统中有更多类似的应用程序,如:
- Shell
- UXTerm
- Terminal
- 以及可能还有其它的应用程序
从终端用户的角度来看,在Linux系统中它们可能都长得很相似。它们之间的区别在于它们如何相互交互。
Shell是实际处理命令并返回输出结果的程序。大多数shell还可以管理前台和后台进程、命令历史记录和命令行编辑等功能。这些功能(以及其他许多功能)在bash中都是标准的,而bash是现代Linux系统中最常见的shell。
Terminal是指一个运行shell的包装程序。几十年前,它是一个由显示器和键盘组成的物理设备。随着Unix/Linux系统不断增加更好的多进程和窗口系统,这个终端概念被抽象为软件。现在你有像Gnome Terminal这样的程序,它会在Gnome窗口环境中启动一个窗口,并在其中运行一个shell,你可以在其中输入命令。
UXTerm是带有Unicode字符支持的XTerm。XTerm和Terminal之间的主要区别在于gnome-terminal具有更多的功能,而XTerm则是极简主义的(尽管它具有gnome-terminal没有的一些高级功能)。