如何在没有交互的情况下使用top?

如何在没有交互的情况下使用top?

我想定期监控 CPU 使用率并按时间序列绘制图表。由于了解不多,我打算使用 top 命令,类似于这个问题 (监控单个进程的 CPU 使用率(可能还有内存使用情况)尽可能简单)。但是当我发出“top -c -p PID”这样的命令时,我希望它自动输出然后退出,而不需要手动输入q或ctrl-c。如果不使用top,还有什么命令可以实现相同的功能而无需交互?

答案1

如果您想监控特定进程,可以使用命令:

ps -flp <PID>

如果您想监控系统的整体性能,您可以使用vmstat以下sysstat包:

vmstat 1 2

并得到第二行(第一行是从服务器启动时的平均值)

答案2

从“man top”中我发现使用选项“-b”和“-n”可以解决这个问题。

相关内容