如何在 LINUX 的非交互模式下限制 top 命令输出中的行数

Mat*_*ose 2 linux bash top-command

我们如何在非交互模式下将 top 命令输出中的行数限制为特定数字“例如 5”?

Leo*_*eon 5

您必须提供不带参数-w选项并通过LINES环境变量指定所需的行数:

LINES=20 top -b -n 1 -w
Run Code Online (Sandbox Code Playgroud)

请注意,输出的宽度是通过COLUMNS环境变量控制的。因此,如果它是在您的环境中设置的,则必须覆盖它才能调用 top:

LINES=20 COLUMNS=80 top -b -n 1 -w
Run Code Online (Sandbox Code Playgroud)

或者

(unset COLUMNS; LINES=20 top -b -n 1 -w)
Run Code Online (Sandbox Code Playgroud)

这适用于top包含在 Ubuntu 15.10 中的版本。

$ top -v
  procps-ng version 3.3.9
Usage:
  top -hv | -bcHiOSs -d secs -n max -u|U user -p pid(s) -o field -w [cols]
Run Code Online (Sandbox Code Playgroud)

显然,-w选项中不存在的所有版本top。但是你总是可以使用管道来限制输出:

top -b -n 1|head -n 20
Run Code Online (Sandbox Code Playgroud)