In einem früheren Artikel beschrieb ich einen leichtgewichtigen Terminkalender, der nichts anderes tat, als EMails zu versenden. Ich habe diese Idee aufgegriffen und ein wenig erweitert - nun startet die Lösung beliebige Tasks zu definierten Zeitpunkten
Ich habe den Aufgabenbereich weiter gefasst: die Lösung sollte mich nicht mehr nur an Termine per EMail erinnern, sie sollte vielmehr auch Aufgaben selbstständig abarbeiten. Cron konnte ich dazu nicht benutzen, da man damit einmalige Aufgaben nur für maxinmal ein Jahr im voraus einplanen kann.
Ich setzte mich also wieder hin - ein guter Bekannter pflegt zu sagen: "Erst muß der Plan fertig sein!" - und definierte meine Ansprüche erneut:
Am Anfang des Skriptes wird das Datenverzeichnis festgelegt
Zunächst testet das Skript, ob eine Datei .
Anschließend wird im Datenverzeichnis nach Verzeichnissen gesucht, die entweder das aktuelle Jahr oder "forever" als Namen tragen. Falls solche Verzeichnisse gefunden werden, wird in sie gewechselt.
Im Jahresverzeichnis wird nach Verzeichnissen gesucht, die entweder die Nummer des aktuellen Monats (immer zweistellig, gegebenenfalls links mit 0 aufgefüllt) oder "forever" als Namen tragen. Falls solche Verzeichnisse gefunden werden, wird in sie gewechselt.
Im Monatsverzeichnis wird nach Verzeichnissen gesucht, die entweder die Nummer des aktuellen Tages im Monat (immer zweistellig, gegebenenfalls links mit 0 aufgefüllt) oder "forever" als Namen tragen. Falls solche Verzeichnisse gefunden werden, wird in sie gewechselt.
Im Tagesverzeichnis wird nach Dateien gesucht, die ausführbar sind. Werden solche gefunden, wird das aktuelle Verzeichnis auf das Tagesverzeichnis gesetzt und die gefundene Datei ausgeführt. Dabei werden für eine Datei namens XY die Ausgaben auf stdout in XY.output und die Ausgaben auf stderr in XY.error umgeleitet
Als letztes schließlich wird das Modifikationsdatum der Datei .
Wer dieses Skript ebenfalls einsetzen möchte, muß dazu lediglich das Datenverzeichnis am Beginn des Skripts geeignet definieren.
13.07.2015
Nachdem ich vor einiger Zeit eine eigene, proprietäre Lösung vorgestellt habe, Benachrichtigungen oder Alarme für beliebig weit in der Zukunft liegende Ereignisse zuverlässig auszulösen, fand ich jetzt die Komplettlösung...
VNC-Desktop Container
19.07.2020
Ich habe vor kurzem über die Inbetriebnahme eines Guacamole-Containers berichtet - hier folgt eine Ergänzung
WeiterlesenAndroid Basteln C und C++ Chaos Datenbanken Docker dWb+ ESP Wifi Garten Geo Go GUI Gui Hardware Java Java. Komponenten Jupyter JupyterBinder Komponenten Links Linux Markdown Markup Music Numerik OpenSource PKI-X.509-CA Präsentationen Python QBrowser Rants Raspi Revisited Security Software-Test sQLshell TeleGrafana Verschiedenes Video Virtualisierung Windows Upcoming...
Ich bin also jetzt wirklich schon so alt, dass ich miterleben kann, wie Dinge, die ich in der Ausbildung als feststehendes Wissen gelernt habe von irgendwelchen Futzis als der neueste heiße Scheiß unter neuem Namen verkauft wird?
WeiterlesenNach der letzten losen Zusammenstellung (für mich) interessanter Links aus den Tiefen des Internet von 2025 folgt hier gleich die nächste:
WeiterlesenEin kleiner Rant aus Wut, weil ich mich so ohnmächtig fühle wenn ich sehe, das meine Mitbürger so gar keine Lust haben und zu bequem sind, sich gegen die totale Überwachung zu wehren.
WeiterlesenManche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.
Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.
Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...
PS: Meine öffentlichen Codeberg-Repositories findet man hier.