2012-03-14 129 views
0

我遇到麻煩執行命令通過php。當我開始這項工作時,它會第一次運行,並在完成運行邏輯1分鐘後創建一個隊列作業。排隊的作業在指定的時間運行,但它在完成運行邏輯1分鐘後不會創建新的作業隊列,因此它會死亡。PHP執行和在命令

僞邏輯是
//task_queue.php
if(we_have_tasks){
Run Logic
shell_exec('/usr/local/bin/php -f task_queue.php | at now + 1 minutes');
}

我在做什麼錯?任何幫助表示讚賞。我想如果我使用'at'命令,我將能夠安排工作而不重疊。

感謝

+0

看到這一點。 http://stackoverflow.com/questions/4421020/use-php-to-create-edit-and-delete-crontab-jobs – Milap 2012-03-14 05:18:13

回答

0

我覺得你的意思寫shell_exec('echo "/usr/local/bin/php -f task_queue.php" | at now + 1 minutes');沒有?你得到的版本立即重新運行。

+0

這工作,感謝 – Huseyin 2012-03-15 14:37:33

+0

@hobbs我拿到「PAM失敗:系統錯誤「錯誤迴應。有什麼意見嗎? – 2018-02-24 18:16:18

0

您可以嘗試

exec('php /usr/local/bin/php -f task_queue.php | at now + 1 minutes');