2016-03-29 18 views
1

Lets sagen, dass ich einen cron-Job planen alle 3 Tage laufen:Will Cron Job heute starten?

0 22 */3 * * 

Wird es heute Abend um 22.00 Uhr oder in drei Tagen um 10 Uhr zu starten?

+0

Dies sollte eigentlich auf Superuser gefragt werden. Das dritte Element ist der Tag des Monats. Da heute der 29. März ist, wird der Job heute nicht laufen. –

+0

Sie haben die falsche Antwort gewählt, weil zwei unabhängige Cron-Test-Tools gezeigt haben, dass das Skript nicht morgen, sondern am 31. läuft - es sei denn, Sie überspringen einen Tag :) – jacmoe

Antwort

1

Das dritte Element ist der Tag des Monats. Da heute der 29. März ist, wird der Job heute nicht laufen. Das nächste Mal wird es am 31. März laufen.

Die/3-Notation führt am Tag des Monats -1 eine Modulo-Operation durch. Also alle Kommentatoren haben völlig Recht */3 läuft auf 1, 4, 7 usw. jeden dritten Tag nach dem ersten Tag der Woche.

+0

Ok, es wird morgen beginnen? – anderish

+0

Richtig! Es wird morgen laufen! –

+0

Ich Frage die Gültigkeit dieser Antwort, es sei denn, es ist der 31. morgen. :) – jacmoe

0

Nach this crontab testing tool die nächsten 10 läuft wie folgt sein:

2016-03-31 22:00:00 
2016-04-01 22:00:00 
2016-04-04 22:00:00 
2016-04-07 22:00:00 
2016-04-10 22:00:00 
2016-04-13 22:00:00 
2016-04-16 22:00:00 
2016-04-19 22:00:00 
2016-04-22 22:00:00 
2016-04-25 22:00:00 

Ein weiterer crontab Tester - crontab.guru - sagt mir, dass das Skript ausgeführt wird:

um 22:00 am 1 , 4, 7, 10, 13, 16, 19, 22, 25, 28 und 31 von jedem Monat.