NEWS
2 Fragen zu schedule
-
Ich bin gerade etwas am rätseln
Ich dachte immer, dass schedules so funktionieren:
schedule("* * * * * ", function () // jede Sekunde
schedule(" * * * ", function () // jede Minute
schedule(" * * *", function () // jede StundeBei Sekunde und Minute passt das auch, aber die Stunden klappen nicht.
schedule("* * * *", function () { console.log("Stunde") ; }); schedule("* * * * *", function () { console.log("Minute") ; });
liefert:
22:54:00.012 info javascript.0 (4630) script.js.Zeit.SonneDa: Minute 22:54:00.018 info javascript.0 (4630) script.js.Zeit.SonneDa: Stunde 22:55:00.065 info javascript.0 (4630) script.js.Zeit.SonneDa: Stunde 22:55:00.071 info javascript.0 (4630) script.js.Zeit.SonneDa: Minute
(Also auch das vermeintliche Stundenschema wird jede Minute ausgeführt).
bei
schedule("*/2 * * *", function () { console.log("Stunde") ; }); schedule("*/2 * * * *", function () { console.log("Minute") ; });
dachte ich, dass das Ereignis alle 2 Minuten bzw. alle 2 Stunden ausgelöst wird.
Ergebnis ist aber:
22:56:00.015 info javascript.0 (4630) script.js.Zeit.SonneDa: Minute 22:56:00.025 info javascript.0 (4630) script.js.Zeit.SonneDa: Stunde 22:57:01.948 info javascript.0 (4630) script.js.Zeit.SonneDa: Stunde 22:58:00.010 info javascript.0 (4630) script.js.Zeit.SonneDa: Stunde 22:58:00.047 info javascript.0 (4630) script.js.Zeit.SonneDa: Minute 22:59:00.097 info javascript.0 (4630) script.js.Zeit.SonneDa: Stunde
(Die "Stunde" wird trotzdem jede Minute ausgeführt)
Wo ist mein Denkfehler?
Zweite Frage: Wie kann man einen schedule mit Astrozeiten kombinieren? Ich würde gerne ein Skript (zur Bewässerung) immer eine halbe Stunde vor Sonnenaufgang starten.
-
@wolfgangfb Wenn Du alle Stunden haben willst, musst Du die kleineren Einheiten auf feste Werte setzen. Wenn also alle Stunden gewünscht ist, dann bleibt der * bei Stunde, bei Minute trägst Du aber 0 (falls es Sekunde gibt ebenfalls ein Wert ein) wenn Du zu jeder vollen Stunde, oder halt eine andere Zahl - also zum Beispiel 5 - um dann 10:05 und 11:05 zu erhalten usw.