Linux操作系统解读:GUI、CLI 和 TUI

当你开始使用 Linux 并关注关于 Linux 的网站和论坛时 , 你会经常遇到诸如 GUI、CLI 等术语 , 有时还会遇到 TUI 。
这一章的 Linux 黑话解释简要解释了这些术语 , 以便你作为一个(新的)Linux 用户在使用这些缩写词时能够更好地理解上下文 。
说实话 , 像 GUI、CLI 或 TUI 这样的术语并不是 Linux 的专属术语 。这些都是通用的计算术语 , 你会发现在非 Linux 的讨论中也会用到它们 。
GUI - 图形用户界面(Graphical User Interface)
这可能是你在这里最常遇到的词汇 。这是因为我们专注于桌面 Linux 用户 , 并试图涵盖易于使用的图形化方法和应用程序 。
GUI 应用程序(或图形应用程序)基本上是指任何可以与你的鼠标、触摸板或触摸屏交互的东西 。有了图标和其他视觉概念 , 你可以使用鼠标指针来访问功能 。

Linux操作系统解读:GUI、CLI 和 TUI
文章插图
GIMP:一个用于照片编辑的GUI应用程序
在 Linux 上 ,  桌面环境 为你提供了与系统交互的图形界面 , 然后 , 你可以使用 GUI 应用程序 , 如 GIMP , VLC、Firefox、LibreOffice、文件管理器等来完成各种任务 。
GUI 使普通用户的计算机使用变得更加容易 , 否则它将仍然是一个极客专用区 。
【Linux操作系统解读:GUI、CLI 和 TUI】 CLI - 命令行界面(Command Line Interface)
CLI 基本上是一个接受输入来执行某种功能的命令行程序 。基本上 , 任何可以在终端中通过命令使用的应用程序都属于这一类 。

Linux操作系统解读:GUI、CLI 和 TUI
文章插图
apt-cache 是一个 CLI 工具 , 用于在基于 Debian 的系统上与 APT 缓存交互
早期的电脑与操作系统交互没有鼠标 , 你必须使用命令与机器互动 。
如果你认为这都算困难 , 那你应该知道 , 早期的计算机甚至没有一个屏幕可以看到正在输入的东西 , 他们用实体的纸质打印机看到他们的输入命令 。我从来没有用过这样的电脑 , 也没有在现实生活中看到过 。我用过的最接近的东西是学习期间的单片机套件
现在的 CLI 还有用吗?当然有 。命令总是有它的好处 , 特别是当你处理操作系统的核心功能和配置时 , 比如设置防火墙、管理网络甚至 包管理。
你可能会有一个基于 GUI 的应用程序来完成同样的任务 , 但命令可以让你更精细地访问这些功能 。在一些情况下 , 你会发现 GUI 应用程序也会用命令(在它们的代码中使用)与操作系统交互 。
许多流行的 GUI 应用程序往往是基于 CLI 工具的 。以 Handbrake 为例 。这是一个流行的开源媒体转换器 , 它底层使用的是 FFMPEG 命令行 工具 。
很明显 , 使用命令行工具没有图形工具那么简单 。不要担心 。除非你有特殊需要 , 否则你应该可以用图形化的方式使用 Linux 系统 。然而 , 了解基本的 Linux 命令会有很大的帮助 。
TUI - 终端用户界面(Terminal User Interface)(也称为 基于文本的用户界面(Text-based User Interface))
这是三者中最不常见的名词 。TUI 基本上部分是 GUI , 部分是 CLI 。糊涂了吗?让我为你解释一下 。
你已经知道 , 早期的计算机使用 CLI 。在实际的 GUI 出现之前 , 基于文本的用户界面在终端中提供了一种非常基本的图形交互 。你会有更多的视觉效果 , 也可以使用鼠标和键盘与应用程序进行交互 。
TUI 是基于文本的用户界面或终端用户界面的缩写 。“基于文本”这个说法主要是因为你在屏幕上有一堆文本 , 而“终端用户界面”的说法是因为它们只在终端中使用 。
TUI 的应用虽然不是那么常见 , 但你还是有一些的 。基于终端的 Web 浏览器 是 TUI 程序的好例子 。基于终端的游戏 也属于这一类 。

Linux操作系统解读:GUI、CLI 和 TUI
文章插图
CMUS 是基于终端的音乐播放器
当你在 Ubuntu 中安装多媒体编解码器 时 , 你可能会遇到 TUI , 你必须接受 EULA 或做出选择 。
TUI 应用程序不像 GUI 应用程序那样用户友好 , 它们经常会有学习曲线 , 但它们比命令行工具更容易使用一些 。
最后……
TUI 应用程序通常也被认为是 CLI 应用程序 , 因为它们被限制在终端上 。在我看来 , 你是否认为它们与 CLI 不同 , 这取决于你 。
责编AJX

    推荐阅读