我需要开发一个shell脚本,它会在特定的unix进程开始运行时立即发送电子邮件,并在进程完成/停止后立即发送邮件。你能帮我解决一下这个检查方法吗?我可以检查进程是否正在运行,但在这里我需要检查进程是否开始运行以及何时完成。
提前致谢。
答案 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循环并发送电子邮件时。然后重复这个过程,只要程序正在运行,我们就会等待,当它不再运行时,我们会发送一封电子邮件。