如何检查特定进程是否开始运行以及何时停止

时间:2015-09-08 12:27:26

标签: linux unix

我需要开发一个shell脚本,它会在特定的unix进程开始运行时立即发送电子邮件,并在进程完成/停止后立即发送邮件。你能帮我解决一下这个检查方法吗?我可以检查进程是否正在运行,但在这里我需要检查进程是否开始运行以及何时完成。

提前致谢。

1 个答案:

答案 0 :(得分:-1)

while [ -z $(pidof UnixProcess) ]
do
   sleep 1
done

//send email programs running

while [ $(pidof UnixProcess) ]
do
   sleep 1
done

//send email program completed

这可能不是最有效的,是您想要的,甚至可能不起作用。但这是第一个在阅读你的问题时浮现在脑海中的人。

只要没有任何名称正在运行的进程,我们就等待,当我们离开第一个while循环并发送电子邮件时。然后重复这个过程,只要程序正在运行,我们就会等待,当它不再运行时,我们会发送一封电子邮件。