我想知道正在运行的进程何时终止。我怎么看?

use*_*890 14 command-line process

我想知道我可以运行的任何命令来了解进程的结束时间。

我已经启动了该进程并知道它的 PID,但我想知道是否有任何命令可以告诉我它何时结束。

谢谢你的帮助。

Eri*_*lho 12

运行这个:

while kill -0 <PID>; do sleep 1; done; echo "Process finished at $(date +"%F %T")."
Run Code Online (Sandbox Code Playgroud)

或者你可以制作一个 bash 脚本。wait-for-death.sh

#!/bin/bash

if ! kill -0 $1; then
    echo "Process $1 doesn't exist."
    exit 1
fi

while kill -0 $1; do
    sleep 1
done

echo "Process $1 finished at $(date +"%F %T")."
Run Code Online (Sandbox Code Playgroud)

然后给它执行权限:

chmod +x wait-for-death.sh
Run Code Online (Sandbox Code Playgroud)

并通过进程的 PID 运行它:

./wait-for-death.sh <PID>
Run Code Online (Sandbox Code Playgroud)