我有的通過cron設置爲運行每隔5min bash腳本......有次下一個5分鐘來,最後一個仍在運行。如果cron試圖運行它時停止腳本的最好方法是什麼?計劃的Cron - 重疊
貌似加入這樣的事情https://stackoverflow.com/a/12706574/800592到我的bash腳本會做的伎倆的開始?
我沒有得到什麼代碼試圖做雖然和我的腳本的正確語法會是什麼?
...
The third form is convenient inside shell scripts, and is usually used
the following manner:
(
flock -n 9 || exit 1
# ... commands executed under lock ...
) 9>/var/lock/mylockfile
...
也許這樣的事情也會起作用?
flock -n -e 200 || exit 1
我認爲你可能需要考慮更嚴肅的重新設計。考慮一下,如果由於某種原因腳本開始需要6分鐘才能完成,會發生什麼情況。然後第二次迭代遲到1分鐘,這意味着第三次迭代遲到2分鐘等等,直到很快你有幾百個副本在等待運行,並且爭奪鎖定(但是你實現它),只要一次迭代是目前正在運行釋放它... – twalberg
JUP,我知道......你需要更多的邏輯來處理這些情況。但這僅僅是一個例子,而不是一個完整的調度解決方案。我個人會使用第一個例子,我可能會錯過一些週期,但它非常強大... –
我同意,第一個例子適合我 – Tony