2

我在 Ubuntu 上使用 Bash,有时当我运行命令时,即使我向上滚动到顶部,输出也会溢出终端。如何访问由于溢出而隐藏的输出部分?

4

5 回答 5

3

您可以尝试以下任何方法(以ls命令为例说明命令的去向):

选项 A:将输出重定向到一个文件,>然后使用 或 之类的文本编辑器检查该less文件。vimgedit

$ ls > outfile
$ less outfile
$ vim outfile
$ gedit outfile
$ emacs outfile

要将命令的输出写入 stdout 和 stderr 到您的 ,请在末尾outfile添加 a ,如下所示:2>&1

$ ls > outfile 2>&1

选项 B:将命令的输出直接通过管道传输到less

$ ls | less

注意:如果您less使用上述任一选项查看输出,请使用:

  • Ctrl+F向下一页,
  • Ctrl+B上一页,
  • Ctrl+D每页减少 1/2,
  • Ctrl+U最多 1/2 一页
  • 箭头键逐行向上/向下移动。
  • 按下可随时q退出less
于 2012-11-08T05:40:26.783 回答
1

您可以将输出通过管道less传输到:

command | less
于 2012-11-08T05:40:20.263 回答
1

那实际上不是bash这样做的,它是终端程序。

你有几个选择。也许最简单的方法就是通过 管道传递您的命令less,它允许您来回滚动:

command_with_much_output | less

其次,您可以配置您的终端程序。假设您使用的是默认选项,您可以打开Edit菜单并选择Profile preferences

在此处输入图像描述

然后选择Scrolling选项卡,您可以更改回滚缓冲区大小:

在此处输入图像描述

于 2012-11-08T05:41:27.450 回答
0

您可以尝试将输出重定向到文本文件。

命令 > 文件

于 2012-11-08T05:38:57.267 回答
0

或者,您可以增加配置文件属性中保持回滚的行数(假设您使用的是 gnome-terminal)。

于 2012-11-08T05:41:09.257 回答