进程终止时执行命令

3 bash

我想在进程死亡时执行命令.我已经有了一个解决方案,但我希望看看是否有更好的方法来进一步学习BASH.这是我有的:

$ ps -e | grep scp
 7673 pts/1    00:01:17 scp
$ while [ $( ps 7673 2>&1 >/dev/null; echo $? ) = 0 ]; do sleep 1; done; echo "Scp doesn't exist any more"
Run Code Online (Sandbox Code Playgroud)

它有效,我看到了更丑陋的解决方案.:-)你对这一个或另一个更优雅的解决方案有任何改进吗?

dmc*_*kee 6

$ (commandToWaitOn; commandToRunAfter) &

其中可选的'&'并将该对放入背景中.

或者,如果命令是独立启动的,请找到PID并使用

wait PID; commandToRunAfter
Run Code Online (Sandbox Code Playgroud)