2012-11-21 160 views
0

我有一個php腳本,我想運行一段時間(例如5分鐘),但只運行一次。有了cron作業,它將無限期地運行。有另一種方法嗎?5分鐘運行腳本一次(Linux)

+0

你能解釋一下這是什麼嗎?可能有更好的選擇 – Undefined

+0

用戶指定他希望服務器收集數據的時間量。爲此,我創建了一個獨立的php腳本,我使用cron作業調用。但現在我意識到腳本確實會運行指定的時間,但它也會每天運行! – user1798707

+1

查看'at'和'batch'命令。更多這裏:http://kb.iu.edu/data/aewo.html。 –

回答

0

來處理這個問題的方法是:

  1. 當事情觸發需要的cron作業運行,把標誌的地方,cron作業將讀取。
  2. 有cron作業,一直運行詢問「我需要運行嗎?」。它檢查hte標誌。如果它看到它,它會刪除標誌並運行指定的時間。如果沒有,請等到下一次運行(檢查標誌)
  3. 在實際的cron作業中,將「max_execution_time」設置爲5分鐘。然後它停止在(或剛過)5分鐘。更確切地說,如果可以的話,在腳本中加入一個定時器。
+0

嗨,謝謝你的回答。我想出了一個替代方案。如果時間正確,我會調用exit()函數。我也使用exec()函數並將其作爲後臺作業運行。你覺得怎麼樣? – user1798707

+0

公平 - 這是作品,很棒。 exit()就是我在循環中由定時器引用的內容,但如果exec執行這項工作,那麼很好。 – Robbie

相關問題