Hallo,
Habe da leider nichts konkretes dazu gefunden wie ich wiederholt jeden letzten Tag und Minute eines Monats ein at ausführen kann.
Und jeden ersten Tag eines Monats in der ersten Minute auch wiederholt.
Um genau zu sein will ich damit den Stromverbrauch eines Monats erfassen.
https://forum.fhem.de/index.php/topic,115637.msg1099473.html#msg1099473
Ui DANKE
Und Monatsanfang?
at *00:00 {if ($mday == 1) {...}}
DANKE
An dieser Stelle sei wieder einmal darauf hingewiesen, dass ein at nicht nur hh:mm:ss als Zeitpunkt akzeptiert, sondern auch Werte in der Form YYYY-MM-DDTHH:MM:SS oder auch als Unix timestamps (Sekunden seit 1970).
Der erste und der letzte Tag eines Monats lassen sich sehr einfach berechnen, dann muss man das at nämlich nicht jede Nacht starten und prüfen, ob der gewünschte Tag erreicht ist.
use Time::Piece;
# Beispiel, um den letzten Tag im November 2020 zu ermitteln
sub month_test {
my $my = '112020';
my $t = Time::Piece->strptime($my, "%m%Y");
return $t->month_last_day;
}