Linux(Ubuntu)终端-如何查看以前不可见的页面

问题描述 投票:0回答:12

当您向上滚动时,比如说查看日志,它的第一部分将不可见,因为终端仅支持有限的数量。的线路。因此,如果您想向上滚动并能够看到所有内容,至少向上几页,您该怎么做?

linux terminal
12个回答
80
投票

使用 Shift+Page UpShift+Page Down


21
投票

将输出通过管道传输到寻呼机,如下所示是更好的选择:

command | less 

command | more

10
投票

您可以启用无限制向后滚动(如果需要,也可以启用大量向后滚动)。

要执行此操作,请转至

文件→配置文件首选项→滚动[选项卡]

然后,勾选

Unlimited
,或设置所需的行数。当然,它仅适用于接下来键入的行。


5
投票

我使用的一些技巧-

一些终端应用程序(gnome-terminal)允许您增加向后滚动缓冲区大小

通过管道输出到文件:

command > file.log

通过管道将命令传递给 less:

command | less

尾部日志和管道到 grep 以减少输出

tail -f example.log | grep 'search text'

4
投票

screen 的替代方法是使用 tee 将所有输出复制到文件,同时仍将其打印在终端上:

yourcommand | tee output.txt

3
投票

尝试使用

screen
命令,并将其回滚缓冲区设置为更大的大小。

screen
还有许多其他好处和精彩的功能。

如果您所做的只是查看日志,您也可以使用寻呼机,例如

less


3
投票

如果你想逐行滚动,可以使用

Control+Shift+向上/向下箭头。


2
投票

如果您使用的是 gnome-term(默认),那么您可以更改您的设置。 要么设置编号。行数设置为无限,或者设置为比默认值大得多的缓冲区大小。


1
投票

本质上是支持@zerick的解决方案,但如果你在

gnome-terminal
,你可以修改它的配置。请参阅这个


0
投票

如果您在 tmux 中(可以在单个终端会话中创建多个终端会话,强烈推荐),您可以在执行 Ctrl-b 然后 [,了解更多信息后轻松使用普通导航键进行滚动详情我们看一下:如何在 tmux 中滚动?


0
投票

这些都没有回答原来的问题。 所有答案都是如何使新的终端窗口(或当前的终端窗口)开始以某种方式运行。 问题是如何查看已经滚走的内容。

为了回答这个问题,每个终端会话应该有自己的“历史”文件(不要与命令历史混淆),其中包含与显示的 stdin/stdout 相关的所有内容。 我可能是错的,但这可能会有所不同,具体取决于您使用的终端模拟器。有些人只是在您关闭窗口/结束会话时将其丢弃。

我正在尝试自己解决这个问题,所以这是另一个线程中更直接的答案。

https://unix.stackexchange.com/questions/145050/what-exactly-is-scrollback-and-scrollback-buffer

据此告诉我,我怀疑您可以获得的最佳建议是,对于您使用的任何终端模拟器,查找它存储回滚缓冲区的位置,这可能是您唯一的希望。 这就是我现在要尝试的。 (也就是说,如果会话当前仍然打开,而不是关闭终端窗口)


0
投票

我可能错过了,但似乎没有人提到head或tail的价值。如果您只对日志顶部的第一条视图线感兴趣,

head /var/log/messages.log

如果您也想看到更多或更少的顶部,那么:

head -NUM /var/log/messages

其中NUM是大于0的数值 由于问题是关于滚动到日志顶部的,因此我不会向您介绍 tail 的详细信息。在所有选项中,我喜欢:

cat /var/log/messages | more

上面已经建议了,它将为您提供一种简单的方法来向下移动日志文件的行。在某些系统上,您实际上可以向上或向下滚动更多内容。

© www.soinside.com 2019 - 2024. All rights reserved.