Seite 1 von 1
[GELÖST] Wie funktioniert Time cron?
Verfasst: 21. Jun 2020 11:20
von thomas_w
Time cron ist mir ein Rätsel...
Beispiel aus openHAB Forum (
https://community.openhab.org/t/datetim ... sion/54266 ) siehe #11 Get String from Joda
Code: Alles auswählen
Time cron "0 */1 * ? * *" // every minute. Source: https://crontab.guru/examples.html
Wenn ich mir dies dann hier anschaue
https://crontab.guru/every-minute sieht es so aus
timecron.JPG
Verstehe ich nicht, dass sollte doch gleich sein?
Danke und Grüße
Thomas
Re: Wie funktioniert Time cron?
Verfasst: 21. Jun 2020 14:17
von udo1toni
[emoji615] openHAB nutzt quartz cron. Quartz cron ist sekundengenau, ansonsten aber sehr ähnlich zu crontab.
Einmal pro Minute: "0 * * * * ?"
Das Fragezeichen muss exakt einmal im Ausdruck vorkommen, und zwar entweder als Tag im Monat oder als Tag in der Woche. Das soll dem Anwender verdeutlichen, dass nicht beide Felder gleichzeitig eingeschränkt werden können. ( Man kann also nicht ohne Umwege nur am Freitag, dem 13. triggern lassen)
Gesendet von meinem SM-G973F mit Tapatalk
Re: Wie funktioniert Time cron?
Verfasst: 21. Jun 2020 16:43
von thomas_w
udo1toni hat geschrieben: ↑21. Jun 2020 14:17
[emoji615] openHAB nutzt quartz cron. Quartz cron ist sekundengenau, ansonsten aber sehr ähnlich zu crontab.
Einmal pro Minute: "0 * * * * ?"
Das Fragezeichen muss exakt einmal im Ausdruck vorkommen, und zwar entweder als Tag im Monat oder als Tag in der Woche. Das soll dem Anwender verdeutlichen, dass nicht beide Felder gleichzeitig eingeschränkt werden können. ( Man kann also nicht ohne Umwege nur am Freitag, dem 13. triggern lassen)
Das Thema / Syntax von Time cron ist kompliziert zu verstehen. Mich wundert nur, dass dann das openHAB Tutorial auf CronTab als Beispiel verweist.
https://community.openhab.org/t/datetim ... sion/54266
Danke und Grüße
Thomas
Re: Wie funktioniert Time cron?
Verfasst: 21. Jun 2020 19:38
von udo1toni
Das Tutorial ist an der Stelle ja auch gut. [emoji6]
Es geht in dem Tutorial um völlig andere Dinge, da rutschen solche Fehler schon mal durch. In der offiziellen Doku steht es jedenfalls korrekt:
https://www.openhab.org/docs/configurat ... d-triggers
Gesendet von meinem SM-G973F mit Tapatalk
Re: Wie funktioniert Time cron?
Verfasst: 25. Jun 2020 17:21
von thomas_w
udo1toni hat geschrieben: ↑21. Jun 2020 14:17
[emoji615] openHAB nutzt quartz cron. Quartz cron ist sekundengenau, ansonsten aber sehr ähnlich zu crontab.
Einmal pro Minute: "0 * * * * ?"
Das Fragezeichen muss exakt einmal im Ausdruck vorkommen, und zwar entweder als Tag im Monat oder als Tag in der Woche. Das soll dem Anwender verdeutlichen, dass nicht beide Felder gleichzeitig eingeschränkt werden können. ( Man kann also nicht ohne Umwege nur am Freitag, dem 13. triggern lassen)
Dann gilt diese Doku:
http://www.quartz-scheduler.org/documen ... igger.html
Ich finde keinen "Draht" zu dieser Cron Syntax. Regex habe ich auch nie verstanden.
Wenn die Rule alle 2 Stunden feuern soll, wie wäre dann die Einstellung?
0 0 0/2 * * ?
Danke und Grüße
Thomas
Re: Wie funktioniert Time cron?
Verfasst: 25. Jun 2020 20:40
von udo1toni
Ja, falls sie zu den geraden Stunden zur vollen Stunde triggern soll, lautet es
Wenn es zur ungeraden Stunde triggern soll, hieße es
Gesendet von meinem SM-G973F mit Tapatalk
Re: [GELÖST] Wie funktioniert Time cron?
Verfasst: 3. Jun 2024 07:49
von oekonomy
Hi,
ich hatte ein paar cronjobs in den Rules eingetragen. Diese, nach dem ich sie nicht mehr brauchte, gelöscht.
Sie sind aber immer noch da.
Wie kann ich mir diese crontabs anzeigen lassen? mit crontab geht es nicht...
Digitale Grüße
Enrico
Re: [GELÖST] Wie funktioniert Time cron?
Verfasst: 3. Jun 2024 12:01
von udo1toni
Wie meinst Du das?
crontab gehört zum Betriebssystem und hat mit openHAB nichts (!) zu tun.
An welcher Stelle hast Du in den Rules cron jobs angelegt?
Re: [GELÖST] Wie funktioniert Time cron?
Verfasst: 3. Jun 2024 20:14
von oekonomy
cronjob.png
Ich trage Zeiten nun mit spezifischer Zeit ein.
Früher mit diesen Cronjobs (jetzt gerade als Beispiel an zweiter Stelle hinzugefügt).
Und diese Cronjobs scheinen noch da zu sein.
Mit "crontab -l" für openhabian und root gibt es folgende Meldung: "no crontab for openhabian" bzw. root
Wird der cronjob vielleicht unter einem anderen User gespeichert?
Re: [GELÖST] Wie funktioniert Time cron?
Verfasst: 3. Jun 2024 21:09
von udo1toni
oekonomy hat geschrieben: ↑3. Jun 2024 20:14
Ich trage Zeiten nun mit spezifischer Zeit ein.
Ja, nein...
oekonomy hat geschrieben: ↑3. Jun 2024 20:14
Früher mit diesen Cronjobs (jetzt gerade als Beispiel an zweiter Stelle hinzugefügt).
Und diese Cronjobs scheinen noch da zu sein.
Eventuell ist einfach ein Rest der Konfiguration hängen geblieben, das kommt vor. Einer der Nachteile der UI Konfiguration, da kann man nicht eben mal in die entsprechende Datei gehen und das von Hand löschen. Mein Tipp: Rule löschen und neu anlegen (unter anderem Namen)
oekonomy hat geschrieben: ↑3. Jun 2024 20:14
Mit "crontab -l" für openhabian und root gibt es folgende Meldung: "no crontab for openhabian" bzw. root
Wird der cronjob vielleicht unter einem anderen User gespeichert?
Wie oben erwähnt: das hat genau gar nichts mit crontab zu tun. Noch nicht mal die Konfiguration ist die gleiche (crontab arbeitet minutengenau, quartz cron arbeitet sekundengenau) Vergiss bitte crontab.
Abgesehen davon läuft openHAB unter dem User openhab, nicht unter dem User openhabian. Macht aber hier keinen Unterschied, auch der User openhab hat mutmaßlich keinen Eintrag in der crontab, schon gar nicht bezogen auf irgendwelche Rules.
Alles, was Du konfigurierst, wird vom in openHAB eingebauten Scheduler verarbeitet. Die verschiedenen Varianten (Time cron bzw. time is) dienen lediglich den unterschiedlichen Gewohnheiten der Anwender, die cron Schreibweise ist offensichtlich zu komplex. Es wird aber die selbe (!) Engine angesteuert, wäre ja auch doof, zwei unterschiedliche Softwares für die gleiche Aufgabe zu schreiben und parallel zu betreiben...