Linux 适用的 7 大开源终端模拟器

您是否花费大量时间在命令行上?这些终端模拟器将帮助您获得更好的体验。
1 位读者喜欢这篇文章。
Terminal view

Jamie Cox。由 Opensource.com 修改。CC BY 2.0。

您是系统管理员、Linux 高级用户,还是只是经常在命令行上花费大量时间的人?您选择的终端模拟器很可能说明了一些关于您的事情。您喜欢轻量级的吗?功能齐全且可自定义选项丰富?还是您只是使用发行版附带的默认终端?

 

如果您不熟悉终端模拟器客户端,那么本质上它们是图形应用程序,可让您 shell 访问您的计算机。通过使用计算机的文本模式界面,您可以释放 Linux 的真正强大功能以及许多应用程序,这些应用程序提供对其每个功能的快速、高效和可自定义的控制,更不用说系统管理员和开发人员日常工作所依赖的许多实用程序。要从系统的图形界面访问 shell,您需要一个终端模拟器。

 

为了便于比较,我包含了每个终端运行 htop 的默认配置的屏幕截图。当然,每个终端应用程序都允许至少一定程度的自定义,因此仅仅因为它在我的机器上看起来是特定的样子,并不意味着它在您的机器上必须看起来相同。

想亲自试用所有这些吗?在我的 Fedora 机器上,

$ sudo dnf install gnome-terminal guake konsole terminator tilda xterm yakuake

确保我拥有所有这些,尽管 GNOME 终端模拟器已默认安装。

GNOME 终端

GNOME 终端 应用程序当然有一点优势——由于我是 GNOME 用户,因此它默认安装在我使用的每台机器上。话虽如此,它实际上是一个漂亮的软件。与本次综述中的许多终端模拟器一样,它支持彩色文本、各种主题、透明度、鼠标交互、多个选项卡以及一项我无法忍受 没有 的功能:调整大小时自动重排文本。它还支持多个配置文件,因此我可以安全地摆弄设置而不会丢失当前配置,或者为不同的任务设置不同的配置文件。GNOME 终端还使链接可点击,这是一项一旦您习惯了就难以割舍的功能。

作为 GNOME 组件,标题栏的样式与我在系统其余部分可能使用的任何 GTK 主题完美匹配,并且像大多数 GNOME 组件一样,默认终端模拟器在 GPL 第 3 版 下可用。

gnome-terminal

Guake

Guake 是几个具有“下拉”样式界面的终端模拟器中的第一个,只需按一下热键即可从屏幕顶部弹出。不可否认,它也是我最喜欢的终端模拟器,并且是我在家用机器上的日常主力工具。Guake 和其他具有下拉界面的终端的样式仿照 Quake 中包含的终端,而我对这种格式的热爱可能与我 90 年代的怀旧情怀有关。

在 Guake 的众多功能中,我喜欢它开箱即用地附带了如此多的主题,包括我个人最喜欢的 Solarized Dark 和 Tomorrow Night,我在这两者之间来回切换。它具有足够多的选项来启用我所有喜欢的功能,并且默认热键(F12 启动,F11 全屏)现在已成为我的肌肉记忆的一部分。Guake 托管在 GitHub 上,并在 GPL 第 2 版 下可用。

guake

Konsole

Konsole 是 KDE 附带的默认终端模拟器,因此如果您是 KDE 用户,您可能已经熟悉它。作为 KDE 组件,它为许多其他 KDE 应用程序(包括 Konqueror、Kate、KDevelop 等)提供嵌入式终端。它的功能与默认 GNOME 终端类似,但我真正欣赏的是目录和 SSH 的书签功能。它还提供拆分终端,如果您不习惯使用 screen 或 tmux 在终端窗口本身中完成此功能,这将很有帮助。

Konsole 在 GPL 第 2 版 下提供。

konsolee

Terminator

Terminator 是一款终端模拟器,旨在更轻松地在单个窗口中排列终端,其功能包括许多快捷键绑定、布局保存以及同时键入到多个终端的能力。它在很大程度上镜像了 GNOME 终端的行为,因此 GNOME 项目中发现的许多选项也可以在这里找到。

Terminator 是开源的,在 GPL 第 2 版 下提供。

terminator

Tilda

Tilda 是另一个 Quake 风格的下拉终端模拟器,专为 Gtk 设计。它的名称取自波浪号键,即调用 Quake 终端的默认键。Tilda 的默认界面非常简洁——没有窗口标题、边框或任何东西——但这可以在首选项中更改(如果需要)。它具有许多选项,可用于设置从快捷键绑定、设置默认大小和颜色、滚动首选项等所有内容。

Tilda 是开源的,在 GPL 第 2 版 下提供。

tilda

Xterm

如果 xterm 感觉老派,那是因为它确实是。xterm 诞生于 1984 年,是 X Window 系统的默认终端模拟器,无需任何可能位于窗口管理器顶部的图形工具包。这可能使其成为具有图形系统的非常精简的 Linux 安装的理想选择。但是这种极简主义的方法也带来了相应的功能缺乏;它几乎 只是一个终端。尽管如此,对于合适的场合,xterm 仍然有一席之地。

Xterm 在 MIT 许可证 下可用。

xterm

Yakuake

Yakuake 是另一个下拉终端模拟器,它是 KDE 系列的一部分。Yakuake 是“yet another kuake”的缩写,实际上可以被认为是 Konsole(上面列出的)的前端,它的许多功能都与之相似。如果您喜欢 Konsole 但更喜欢 Quake 风格的方法,那么这就是适合您的终端。与 Konsole 一样,Yakuake 在 GPL 第 2 版 下提供。

yakuake

这不是一个详尽的列表。以下是一些其他终端模拟器,它们拥有忠实的拥护者,无论是独立使用还是作为其相应的窗口管理器的一部分。

  • Terminology 旨在尽可能接近地模拟 xterm。适用于 Linux、UNIX、BSD 等; 使用 Enlightenment Foundation Libraries (EFL); 并在 BSD-2 下获得许可。
  • urxvt 是基于 rxvt 版本 2.7.11 CVS 和 aterm 的 X Window 系统终端模拟器。它在 GPLv2 下获得许可。
  • xfce4-terminal,与 GNOME 终端一样,基于 Vte 终端小部件库,并在 GPLv2 下获得许可。
  • PuTTY 是内置到 Windows 和 Unix 平台的 SSH 和 telnet 实现中的 xterm 终端模拟器。它在 MIT 许可证 下发布。
  • st 旨在成为 非常轻量级的终端模拟器。它在 MIT/X Consortium 许可证下获得许可。
  • LXterminal 是 Lightweight X11 Desktop Environment (LXDE) 桌面环境的 标准终端。它在 GPLv2 下获得许可。
  • Sakura 是基于 GTK 和 VTE 的终端模拟器,依赖项很少。它在 GPLv2 下获得许可。

这些终端模拟器中的每一个都具有自己的一组功能和卖点。您最喜欢哪一个?参加本文顶部的投票,或者如果您的偏好未入选,请在下面的评论中告知我们。

编者注:本文最初于 2015 年 11 月发布。它已于 2017 年 10 月和 2021 年 3 月更新,以包含您可能想要考虑尝试的几个附加选项。

您有兴趣阅读更多类似的文章吗?注册我们的每周电子邮件新闻通讯

Jason Baker
前红帽员工。现在是一名顾问和有抱负的企业家。地图爱好者、创客以及开源桌面和自托管软件的热情安装者。

95 条评论

xfce4-terminal,它非常像 gnome-terminal,速度更快,使用的资源和依赖项更少,并且其下拉模式的行为类似于 guake 或 tilda(没有它们的随机错误)。

我认为 Gnome-terminal 非常适合我。简单且始终更新。http://gtbensmag.com

回复 作者 spayder26 (未验证)

xfce4 - 是的。

回复 作者 spayder26 (未验证)

我自己有两个最喜欢的。

我使用 Konsole 已经很长时间了,正如您所说,因为我使用 KDE,而 Konsole 是默认的。但我绝对喜欢它的功能,尤其是选项卡以及将选项卡从窗口拖出并使用该选项卡创建新窗口的能力;然后在原始窗口上替换选项卡。这对我这个相当有条理的处女座很有吸引力。

我最近在一个读者的文章评论中提到 Terminator 时才了解它。我发现 Terminator 在在一个选项卡中打开多个窗格方面更灵活,但在选项卡的实现方面则不然。

我会根据心情在这两个终端模拟器之间来回切换。

感谢这篇精彩的文章,它也让我了解了一些其他选择。

我大部分时间都使用 Konsole,可能是因为它​​是 KDE 默认设置,并且与 Dolphin 等集成。但是,我确实喜欢 Konsole 的许多功能,特别是它可以自定义以适应我脑海中的任何主题。像使用透明度以及终端窗口的平铺背景图片之类的东西可以产生非常漂亮的终端。

我希望它以不同的方式执行的一件事是菜单中访问书签的方式。我最喜欢做的事情是隐藏 Konsole 中的菜单和滚动条,这使得无法访问该功能。该菜单应该是右键单击菜单的一部分。

老实说,除了所有美学的东西之外,我几乎无动于衷。Xterm 对我来说有点简陋,因为它缺少我们都习惯的复制/粘贴功能,并且仅支持鼠标中键单击样式,这让我有点困扰。我也不喜欢按住 control/alt 键来访问菜单,而简单的右键单击就足够了。

我也不喜欢下拉“quake”风格的终端,我从不使用它们。除此之外,无论我使用什么终端模拟器,我都感觉很自在。

我已经使用 Terminator 多年了,它非常适合我的需求。自从安装它以来,我就再也没有回头看过。使用 0.8 透明度,这样我就可以看到它下面打开的任何东西,深色背景上的绿色文本,因为这让我感觉自己像个 h4x0r,当然还有 ZSH shell,因为它太棒了。不可替代的组合。

在我的 Linux 笔记本电脑上,我使用 Terminator,而在我的 Windows 机器上(是的,是的......)我还没有找到任何比 PuTTY 更好的东西。它可以满足我的需求,并且它的复制/粘贴集成非常棒。

您看过 Mobatek 的 MobaXterm 吗?它不仅像 putty 一样执行终端/ssh,而且还实现了 Xserver 和 Cygwin。

回复 作者 druthb

尝试 git bash - 对于来自 Linux 的人来说,它更自然。只需为 windows 安装 Git,它就随之打包。

回复 作者 druthb

@Jason:Terminator 维护者在此。我不确定我是否认出 Terminator 的某些描述。可以肯定的是,我们不在 Windows 上运行。不幸的是,有时会与另一个同名的基于 Java 的终端混淆。那个确实在 Windows 上运行。这个是 Python,仅在 Linux 和 Mac 上运行。我认为您归因于我们的 Terminator 的某些功能实际上来自另一个,但屏幕截图绝对是我们的。

嗨 Steve,很抱歉造成混淆。两个终端模拟器同名确实令人困惑!我将相应地更新。

回复 作者 Steve Boddy (未验证)

我想参加投票,但文字太浅了,我看不清楚。我正在使用 Google Chrome 浏览器,版本 46.0.2490.80 (64 位)。

我已经使用 Terminology 相当长一段时间了。一直是它的忠实粉丝。它对于显示图像、缩略图和预览视频等图形化内容尤其出色。此外,能够创建任意选项卡和拆分也非常棒。

我最常用的一个终端是 ROXterm,因为它具有拖放功能,对于其他所有终端,我使用 suckless 社区的 st。St 是迄今为止我用过的最快、最轻的终端,ROXterm 具有 GNOME 终端的所有功能,而没有任何臃肿。

Rxvt Unicode

lxterminal 对我来说就足够了,它非常轻巧,并且做了一些其他终端已停止做的事情(例如透明度)。

Terminology 是最好的!!

我已经使用 xfce4-terminal 好几年了。它资源占用少真是太好了,但现在我真的不太在意这一点。我喜欢的是它的外观。文本的反锯齿效果非常好,颜色也很容易精确设置,但最重要的是,我可以将光标设置为红色块。我的大多数 vi 配色方案都使用黑色背景(vividchalk、candy 等),当我在查看代码海洋时,我的眼睛总是可以立即找到当前光标位置。这在 windowmaker 和 FreeBSD 上。我偶尔会尝试其他终端,但总是回到 xfce4-terminal。

我已经使用 yakuake 很长时间了,我不记得没有它的生活是什么样的 :)

Yakuake 中我最喜欢的功能是搜索功能,当我要在很长的滚动缓冲区中找到一些输出时非常方便。

还有透明度、多选项卡、选项卡之间的键盘导航(例如,我已经分配 Alt+1 到 Alt+0 以直接转到选项卡 1 到 10)、选项卡拆分等。

我正在进行更广泛的评论,其中也列出了属性。例如,我提出的要求列表是:* 不同的配置文件 * 不同的 WM_CLASS 选项 * 选项卡 * 选项卡之间的键盘导航 * 可以设置选项卡的标题 * url 选择 ...

候选者还有很多,比上面列出的更多:roxterm 和 lilyterm 我用了很多,mate-terminal、lxterm、evilvte、aterm、eterm、pangoterm、pantheon-terminal 等等。

我建议大家尝试一下 roxterm,我更喜欢它而不是 gnome-terminal 和 terminator。

我也使用 roxterm。它具有透明度并正确实现了 geometry 开关
roxterm --geometry "90x24-0-0"

这样我就可以在所有四个角打开窗口。几乎所有其他终端都无法做到这一点。

回复 作者 Norbert Preining (未验证)

Termite。不像 urxvt 那样简陋,而且很容易配置。与大多数终端模拟器相反,它可以通过键盘快捷键打开超链接。

是的!!+1 支持 Termite

回复 作者 Niels K. (未验证)

在 Windows 上,我使用 MobaxTerm。

老实说,我没有偏好。我使用操作系统附带的任何终端模拟器,或者只是 ALT+F1 并使用 tty1(或其他任何)。远程 Unix 和 Linux 服务器的管理并没有因其魅力而受益。我只是想完成工作。但是,我会赞扬 Windows 上的 MobaXterm。它太棒了,并且让我不再使用 KiTTY 作为我的日常终端应用程序。

对于日常工作,我使用
- 在 Linux 上:terminator
- 在 OSX 上:iTerm2(不幸的是,我在 Linux 上没有找到任何如此可配置的东西)
- 在 Windows 上:cmder 包 - 具有一些基本 GNU 工具的 Windows 可能是可用的 ;)

对于 Linux,有一些不错的 WIP 项目
- Enlightment terminology
- finalterm

Jason,我已经尝试评论一次了,但要么它卡在审核中,要么它消失了。

我是图中所示的 Terminator 的维护者,我认为您将描述与另一个也选择该名称的程序混淆了。图中所示的那个从未在 Windows 上运行过,并且是用 Python 编写的。另一个是用 Java 编写的,并且在所有三个平台上都运行。我认为您描述的某些功能也来自另一个程序。如果您可以修改文章,我会很感激,这样我就不会开始被问到如何在 Windows 上运行它 :-)

守护程序模式下的 rxvt-unicode(urxvt) (urxvtc)

在过去 10 年中,我一直在工作中使用 Windows 笔记本电脑(我不明白为什么公司仍然假装从 Windows 工作站支持 linux/unix 系统,而很明显,使用我们自己的 linux/unix 风味会更舒适/高效),并且仍然将 putty 与 putty manager 结合使用,这让我可以使用选项卡,但在家我运行 yakuake 和 konsole 作为我日常任务的主要终端模拟器。

如果公司批准使用我们自己的 linux 风味,或者至少批准其中一些作为我们工作站上的主要操作系统,我将非常感激...

我已经使用 Konsole 多年了,我喜欢它的选项卡、主题和在 KDE 中的集成。我尝试了 Yakuake 并且非常喜欢它,但它从未真正融入我的工作流程。看起来有一些很棒的补充,现在可能是尝试其他一些的时候了。在 Windows 机器上坐了 20 分钟调试终端中的某些东西之后,它们中的任何一个都感觉像是奢侈品 - 仍然没有找到任何我喜欢在那里使用的东西...

xterm + i3 + vim + tmux

最佳组合 :P

GNOME 终端,全屏(所以很多样式无论如何都不可见),通常在内部运行 tmux。

我使用自己的终端(最初是作为练习编写的),但我确信上面的任何一个都更好。我很惊讶没有在列表中看到 putty?无论如何,我的偏好是更精简的工具。

Enlightenment 上的 Eterm。更强大,更少冗余。

我使用的终端有一个 pterm,它是 putty 的终端或控制台版本。它具有将会话流量捕获到日志文件中的相同功能,其中包含主机、日期和捕获时间 ;-)

sakura 非常小巧,并且具有我可能想要的所有功能。
但是,老实说,来自 tty 或 xterm 或任何模拟器的 bash 补全通常可以满足我的所有需求

PAC

哇,很多可怜的用户被困在 gnome-terminal 上。

gnome-terninal 每次当我不得不帮助一位运行 Gnome 的同事时都会让我感到沮丧,因为似乎开发人员一定对 shell 解释器非常没有经验,以至于他们不知道 ALT+字母组合,例如 ALT+b、ALT+f。对于这些默认情况下在 gnome-terminal 中不起作用,不可能有其他解释。可以禁用该行为,但没有其他好的终端(konsole、yakuake,甚至 PuTTY 或 Connectbot)像这样愚蠢。

我喜欢 GNOME Terminal + tmux 和 zsh。与像 xmonad 这样的平铺窗口管理器一起使用时,效果会更好。

我们是 linux 用户,并且花费大量时间使用终端。去 Apple 商店,拿一台 retina macbook(不用买或其他任何东西,不用担心),然后下载 iterm2。打开它,看看它

我们没有任何那么好的东西,这太荒谬了!

我在高中最后一年在 MacBook 上尝试了 iTerm2,我记得没有留下深刻的印象。我真的不明白它获得的赞扬。当人们谈论它的可定制性时,他们只是因为它的 gui 而这么说吗?大多数终端模拟器要么在您的 config 文件夹中有一个配置,要么从 .Xdefaults 或 .Xresources 中获取配置。我不认为可定制性有任何区别。

回复 作者 Jacob Gadikian (未验证)

我使用 xfce-terminal,但我怀念 SunOS cmdtool,它有一个可拆分的窗格,这样您可以在其中一个窗格中查看过去的命令,并将它们粘贴到另一个窗格中。比在一个窗格中来回滚动容易得多。是否有任何终端提供可拆分的窗格,类似于 nedit 和 geany 等文本编辑器中发现的多窗格功能?

我从 terminator 迁移到 terminology,它具有您希望从 terminator 获得的所有拆分背景等支持,但速度明显更快(您可以注意到文本追加速度更快)且更轻巧。我也时不时使用图像预览。

urxvt + tmux + vim。

列表有很多问题.. 默认设置可能不值得一提,如果提到,则应合并为一个条目。下拉终端也是如此。

Terminator 是一个可靠的提及,xterm _可能_ 可以被认为与所有默认的 DE 终端分开,尽管我不知道它是否应该在列表中。看到 urxvt (rxvt-unicode) 没有在列表中,我感到震惊和失望。我觉得大多数高级用户最终都会使用它。我也听说 Termite 非常受欢迎。

大多数时候,我使用来自 Windows 系统的 SSH Secure Shell 来访问我的 (l)unix 系统。这满足了我对 shell 的需求。在 RHEL 上,我不太在意我使用哪个 shell,因为我只想要基本的,没有其他额外的功能。

我投票给了 gnome-terminal,但我需要补充一点,没有 tmux,我*无法*生存。只要我有我可靠的 tmux,我就可以使用任何其他终端模拟器!

我同意 gnome-terminal + tmux 是一个成功的组合!

事实上,gnome-terminal 如此出色的原因正是因为它不妨碍 tmux 执行其窗口/窗格魔法。

如果您访问串行 TTY 设备,最终的组合是 gnome-terminal + tmux + tio

tio - 一个简单的 TTY 终端 I/O 应用程序 - http://tio.github.io

回复 作者 Steven Bakker (未验证)

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 许可。
© . All rights reserved.