Terminplaner mittels Shell-Skript

vorhergehende Artikel in: Linux
07.07.2013

Heutzutage in der vernetzten Welt kommt niemand mehr auf die Idee, einen Terminkalender aus Papier mit sich herumzutragen - alles muß elektronisch passieren. Es gibt aber auch andere Lösungen, als einen Outlook-Server zu installieren oder persönliche Daten in die Cloud auszulagern.

Ich habe mich in der Vergangenheit hin und wieder geärgert, wenn mir Termine durch die Lappen gegangen sind. Das sollte sich ändern - allerdings wollte ich mit der Cloud nichts zu schaffen haben und mir lediglich zum Zwecke der Terminerinnerung einen Groupware-Server aufzusetzen, kam auch nicht in Frage.

Daher setzte ich mich zunächst hin - ein guter Bekannter pflegt zu sagen: "Erst muß der Plan fertig sein!" - und definierte meine Ansprüche an eine elektronische Terminerinnerung:

  1. Sie sollte schlank sein - kein Server, keine Datenbank oder ähnliches
  2. Beim Login sollte jeden Tag geprüft werden, welche Termine an diesem Tag anliegen; werden welche gefunden, soll eine EMail an mich versendet werden.
  3. Beim zweiten oder dritten Login soll diese Prüfung nicht mehr stattfinden, um EMail-Doubletten zu vermeiden
Lassen sich diese Anforderungen erfüllen? Erstaunlicherweise ja - mittels eines Linux-Shell-Skriptes.

Zunächst testet das Skript, ob die Datei .ensure_mail_sent_once im Homeverzeichnis des Nutzers vom aktuellen Tag stammt. Ist das der Fall, beendet es sich sofort. Das verhindert mehrmaliges Senden der Mails bei mehrmaligem Login an ein und demselben Tag.

Anschließend werden aus dem aktuellen Datum Jahr, Monat, Tag und Wochentag extrahiert. Darüber hinaus wird abhängig von Monat und Tag noch ein Flag gesetzt, das anzeigt, ob das aktuelle Datum das Ende des Monats bezeichnet.

Anschließend werden abhängig von den extrahierten Informationen Aktionen ausgeführt - im Beispiel werde ich daran erinnert, daß ich zum Comic-Buchladen gehen und die neuesten Ausgaben abholen muß.

Als letztes schließlich wird das Modifikationsdatum der Datei .ensure_mail_sent_once auf den aktuellen Tag gesetzt, um wiederholtes Ausführen innerhalb eines Tages zu verhindern.

Wer dieses Skript ebenfalls einsetzen möchte, muß dazu lediglich die Referenzen auf das Homeverzeichnis durch das eigene ersetzen.

Lizenz
sentMails

Artikel, die hierher verlinken

Todo.txt

18.10.2015

Todo.txt style="max-width:256px;" Beim ziellosen Browsen im Internet bin ich über Todo.txt gestolpert, das mir aus verschiedensten Gründen sofort aus dem Herzen gesprochen hat.

Scheduler mittels Shell-Skript

23.11.2014

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

Skript genau einmal pro Tag starten

16.08.2014

Ich suchte nach einer Möglichkeit, Shell-Skripts (Bash) einmal am Tage laufen zu lassen - auch wenn der Rechner zwischendurch ausgeschaltet wurde, durfte das Skript nicht nochmals loslaufen. In einem bereits veröffentlichten Artikel wurde eine Lösung bereits implizit vorgestellt. Hier nochmale eine Gegenüberstellung von zwei möglichen Lösungen:

Alle Artikel rss Wochenübersicht Monatsübersicht Codeberg Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Synchronisierung von Lorenz-Systemen III

    23.10.2020

    Nachdem ich in einem vorhergehenden Artikel auf das Problem des kleinen Parameterraums im Zusammenhang mit der Nutzung synchronisierter chaotischer Systeme hingewiesen hatte will ixch hier untersuchen, wie sensibel solche Systeme auf Abweichungen der Parameterwerte zwischen treibendem und getriebenen System reagieren

    Weiterlesen

Neueste Artikel

  • Plugin zur Arbeit mit Markdown für NeoVim

    Ich habe neulich beschrieben, dass ich aktuell mehr und mehr bemerke, dass Dinge, für die ich in meinem NeoVim-Setup Plugins benutzt habe sehr gut auch mit Bordmitteln funktionieren.

    Weiterlesen
  • Raspbian Upgrade von 11 (Bullseye) nach 12 (Bookworm)

    Ich habe neulich wieder einmal eine Upgrade- und Backup-Sitzung mit meinen diversen Linuxinstallationen veranstaltet. Der Zeitpunkt schien mir gekommen, da es eine neue stable Variante von Debian (Trixie) gibt.

    Weiterlesen
  • Meine praktischen Erfahrungen mit ollama (llava)

    Ich diskutiere immer wieder gern über das was heute Machine Intelligence oder Artificial Intelligence ( oder wie die ganzen anderen hohlen Phrasen heißen, die dafür heutzutage als Buzzwords missbraucht werden). Das geschieht online, in meinem $dayjob oder auch privat. Meine Meinung steht fest: das ist alles Quatsch und steht in keiner Relation zum Nutzen

    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.