如何在 Linux 上的 Screen 中查看更多历史记录?

如何在 Linux 上的 Screen 中查看更多历史记录?

我昨晚一直在命令行中运行脚本(在 Linux EC2 实例上的 Screen 中),出现了一些我没有跟踪的错误。我想“向上滚动”或在 Screen 中查看更多历史记录,但似乎找不到任何可用的命令。

我需要看到比当前屏幕“更远”的屏幕输出。CTRL + a 应该会让我进入 Screen 内的滚动模式,但它不起作用。

答案1

启动 screen 时,可以使用 -h 指定回滚缓冲区的大小,因此可以将其从默认的 100 行增加。但是,对于当前正在运行的 screen,一旦数据离开缓冲区,它就消失了。

[编辑以清晰易懂]
@opyate 在他的回答中解释了如何使用回滚缓冲区。我把那个答案复制到这里,因为它更清晰,也为新手改进了这个答案。

假设您没有覆盖转义序列,您可以按 Ctrl-a [进入回滚模式,然后使用通常的 Page-UP/Page-DOWNCtrl-b/Ctrl-f上下移动。

答案2

假设您尚未覆盖转义序列,您可以按Ctrl-a [进入滚动回滚模式,然后使用常用的 Page-UP/Page-DOWN 或 Ctrl-b/Ctrl-f 上下移动。

Gentoo wiki 上的屏幕使用

答案3

我需要看到比当前屏幕“更远”的屏幕输出。CTRL + a 应该会让我进入 Screen 内的滚动模式,但它不起作用。

作为对其他答案的补充,我想指出您可以在文件中添加~/.screenrc

defscrollback 100000
termcapinfo xterm ti@:te@

在哪里:

答案4

您还可以在命令中运行命令script,这会将输出记录到磁盘。或者您可以: command 2>&1 | tee /tmp/cmd.out记录输出以供将来调查,您需要一个(实际上)无限大的输出历史记录。

相关内容