在 Linux 上,如何获取正在执行的任何 shell 命令的运行时间?

在 Linux 上,如何获取正在执行的任何 shell 命令的运行时间?

我正在编译一个大型项目,可能需要几个小时才能构建它。在编译项目时,我想查看自编译开始以来到目前为止所花费的时间。

编译结束后可以查看时间,但是编译过程中可以查看时间吗?

答案1

如果您想知道进程运行了多长时间,只需使用附注使用etime格式说明符例如:

ps -C command_name -o etime,args

答案2

要查看已启动的进程已经运行了多长时间,您可以使用ps -p {PID-HERE} -o etimeps -p {PID-HERE} -o etimes。例如,要检查具有 PID(进程 ID)的进程123 已经运行了多长时间,您可以执行以下操作:

 $ ps -p 123 -o etime
    ELAPSED
      00:21

或者

$ ps -p 123 -o etimes
ELAPSED
     21

要计算启动进程所需的时间,请使用该time命令。例如,time sleep 1

$ time sleep 1

________________________________________________________
Executed in    1.00 secs      fish           external
   usr time   58.61 millis   58.61 millis    0.00 millis
   sys time   11.18 millis    8.59 millis    2.59 millis

相关内容