如何找出一个进程在 Linux 中运行了多长时间

你有没有遇到过想知道一个进程在你的 Linux 机器上运行了多长时间的情况? 不? 没问题! 这个简短的指南帮助您找出 Linux 中活动进程的正常运行时间。

您不需要任何监控应用程序。 在 Linux 和其他类 Unix 操作系统中,有一个命令叫做 ps,用于显示有关活动进程的信息。 使用 ps 命令,我们可以很容易地找出一个进程在 Linux 中运行了多长时间。

查看一个进程在 Linux 中运行了多长时间

ps 命令具有不同的格式说明符(关键字),可用于控制输出格式。 我们将使用以下两个关键字来查找活动进程的正常运行时间。

  • etime – 自进程启动以来经过的时间,形式为 [[DD-]hh:]mm:ss.
  • etimes – 自进程启动以来经过的时间,以秒为单位。

首先,你需要找出 PID 的一个过程。 以下命令显示 PIDdhcpcd 过程。

$ pidof dhcpcd 8299

正如您在上面的输出中看到的, 8299 是个 PIDdhcpcd 过程。

现在,我们可以使用命令查看该进程运行了多长时间:

$ ps -p 8299 -o etime  ELAPSED  04:05:37

您还可以使用 etimes 关键字查看经过的时间(以秒为单位)。

$ ps -p 8299 -o etimes ELAPSED  14749
使用 ps 命令查看一个进程在 Linux 中运行了多长时间

不仅是单个进程,我们还可以显示所有进程的正常运行时间,如下所示。

$ ps -eo pid,comm,lstart,etime,time,args

或者,

$ ps -eo pid,comm,lstart,etimes,time,args

第一个命令显示所有 Linux 进程的正常运行时间,在 [[DD-]hh:]mm:ss 格式,后者以秒为单位显示正常运行时间。

这是第二个命令的示例输出。

在 Linux 中使用 ps 命令查找所有进程的正常运行时间

正如您在上面的输出中看到的,我们有六列格式的所有进程的正常运行时间。

这里,

  • PID – 进程 ID。
  • COMMAND (第二列)- 不带选项和/或参数的命令名称。
  • STARTED – 进程的绝对开始时间。
  • ELAPSED – 自进程启动以来经过的时间,形式为 [[dd-]hh:]mm:ss。
  • TIME – 累积 CPU 时间,”[dd-]hh:mm:ss” 格式。
  • COMMAND (最后一列)- 命令名称及其提供的所有选项和参数。

有关更多详细信息 ps 命令,检查手册页。

$ man ps

建议阅读:

  • 如何在 Linux 中更改进程的优先级
  • 如何在 Linux 上使用 Procs 显示进程信息

命令行找出进程在 Linux 中运行了多长时间LinuxLinux 命令Linux processesps