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...
Vorhaben 2020
03.01.2020
Genau wie letztes Jahr habe ich auch dieses Jahr wieder ein "Listche" verfasst, um mir all die interessanten Vorhaben zu notieren, die ich mit mittlerem zeitlichen Horizont anzugehen gedenke.
Weiterlesen...Android Basteln C und C++ Chaos Datenbanken Docker dWb+ ESP Wifi Garten Geo Go GUI Gui Hardware Java Jupyter Komponenten Links Linux Markdown Markup Music Numerik OpenSource PKI-X.509-CA Python QBrowser Rants Raspi Revisited Security Software-Test sQLshell TeleGrafana Verschiedenes Video Virtualisierung Windows Upcoming...
In eigener Sache...
Weiterlesen...Nach dem ersten Teil von mir als interessant eingestufter Vorträge des Chaos Communication Congress 2024 hier nun die Nachlese
Weiterlesen...Nach dem So - wie auch im letzten Jahr: Meine Empfehlungen für Vorträge vom Chaos Communication Congress 2024 - vulgo: 38c3:
Weiterlesen...Manche 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.