如何使用shell_exec从其路径中查找进程ID

时间:2011-05-13 22:21:11

标签: php linux cron

我需要为我的用户提供一种方法来停止他们的cron任务,以便它可以在5分钟的周期内重新启动。

我认为我需要使用shell_exec来恢复进程然后终止特定进程。我能够将此过程与服务器上运行的其他过程区分开来的唯一方法是路径,即php /home/sconmod/public_html/**URN**/Includes/System/CronTask.php

有没有人知道我可以通过匹配路径来获取进程的进程ID?

感谢。

1 个答案:

答案 0 :(得分:1)

处理此问题的常用方法是PID文件。在作业启动时将cron作业的进程ID写入已知位置的文件,并在作业结束时删除该文件。如果您需要在结束之前终止进程,只需从文件中读取PID并终止进程。您可能希望在cron作业中包含一些信号处理,以便它们正确地清理它们的PID文件,但是您不希望将SIGTERM发送到错误的进程只是因为有人留下了陈旧的PID文件。