有更好的屏幕选择吗?

有更好的屏幕选择吗?

好吧。所以我喜欢 Screen。当机器崩溃或与网络断开连接时,它曾多次拯救我。但是,有足够多的理由阻止我使用 Screen 做所有事情,其中​​包括:

  1. 滚动起来很麻烦。为什么我不能像普通的 bash shell 一样进行交互?
  2. 我的键盘快捷键不见了。我在 bash 环境中自定义了许多东西,有没有办法让它们在屏幕上也能正常工作?

是否有任何工具或技巧可以帮助我使我的屏幕使用体验与我的 bash 使用体验一样高质量?

答案1

这是一个很长且基本的答案,但我还在下面 OP 的回复中介绍了你列出的 Ctrl-D 问题

我发现这里存在很大的混乱终端。滚动不是由你的 shell 完成的,而是由你的终端完成的。你screen要做tmux的就是添加在你的 gnome-terminal 顶部为每个子窗口创建一个新的终端(乍一听可能有点奇怪,但终端并不是你真正需要的)但实际上只是一个设备,通常在 /dev/pts/ 下,进程可以从中读取字节和写入字节)。

当屏幕运行其伪终端时在上面gnome-terminal 的快捷键无法拦截 gnome-terminal 已经拦截的键。它需要有自己的快捷键,而您作为用户不应该按下 gnome-terminal 能识别的快捷键。您可以,但结果不会如您所愿,因为 gnome-terminal 不知道屏幕造成的混乱。

您的快捷键可能确实只被 shell 截取(而不是被 shell 读取字符的终端截取),但除非涉及 Ctrl-A(除了终端子系统截取的键(例如 Ctrl-C)之外,screen 截取的唯一键)不会受到影响。它们的工作方式应该相同。该bashshell 通常解释的一些快捷键是 Ctrl-A(在 screen 内,您必须使用 Ctrl-A a)将光标移动到编辑命令的开头,Ctrl-E(在 screen 内的工作方式与不在 screen 内的工作方式相同)移动到末尾。

我知道这听起来很复杂,但其实非常简单,因为终端只是一个可以写入字节和读取字节的文件。如果您感兴趣的话,这里有一篇涵盖许多相关内容的优秀文章:http://www.linusakesson.net/programming/tty/index.php

例如,Ctrl-D(一个应该由) 问题,您应该检查 Ctrl-D 生成的字符在 gnome 终端和屏幕终端上是否相同。您可以例如,字符cat。我怀疑它们确实相同(在我的系统上确实如此),如果是,则意味着 screen 启动了另一个 shell,而不是 gnome-terminal 通常启动的 shell。在这种情况下,找出 gnome-terminal 本机启动的 shell,并在 screen 会话中启动此 shell(使用相同的命令行参数)。

答案2

一个词:屏风

我大约一年前开始使用并且不会再使用其他产品。

它基本上是一个完全可定制的屏幕前端。 http://en.wikipedia.org/wiki/Byobu_%28software%29

Byobu (软件) 来自 Wikipedia,自由的百科全书 跳转到: 导航、 搜索 Byobu nijaba.png 的终端屏幕 Byobu 开发者 Dustin Kirkland(查看完整作者列表 首次发布 2009 年 用 sh、python 编写 操作系统 Linux、类 Unix 类型 命令行界面 许可证 GNU 通用公共许可证 v3 网站 http://launchpad.net/byobu

Byobu 是终端多路复用器 GNU Screen[1] 或 tmux[2] 的增强版,可用于提供屏幕通知或状态以及选项卡式多窗口管理。它旨在为连接到远程服务器时的终端会话提供更好的用户体验。历史

Byobu 的想法是在 Ubuntu 开发者峰会的一次会议上提出的,当时开发人员正在寻找一种方法来简化连接到服务器的管理员的屏幕通知。[3]

它最初是为 Ubuntu[4][5] 编写的,此后被移植到多个其他 Linux 发行版[6][7] 和其他类 Unix 操作系统上。[8] 1.0 版名为 Screen Profiles。该项目在 2.0 版中更名为 Byobu。[9] Byobu 3.0 重新设计了构建系统以使用 automake 并允许移植到其他 UNIX 操作系统。Byobu 4.0 引入了屏幕分割功能,重新设计了状态通知系统,并增加了对 tmux 配置文件的支持。Byobu 5.0 引入的最重要的变化是从 GNU Screen 转移到 Tmux 作为默认后端。您仍然可以在屏幕模式下运行 Byobu,但默认体验现在使用 Tmux[10]。

从 Ubuntu 11.10 版本开始,所有 Ubuntu 云实例初始 shell 默认在 Byobu 环境中运行。

答案3

问题

在终端复用器方面,您有多种选择,但没有一种能确切地就像你的壳。

图形解决方案

如果您希望 Screen 和 tmux(以及 byobu)替代 gnome-terminal 中的 Bash,那么它们可能不适合您。所以,您不妨这样做。

VNC 为您提供了一个可分离和可恢复的 X Windows 环境,因此您可以获得终端复用器的所有稳健性,同时还可以获得完整的窗口环境。您可以运行您选择的终端仿真器,使用常规的 Bash 键盘设置,并且您的鼠标将按您期望的方式工作。

也可以看看

相关内容