birthday
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Ubuntu 24.04 Noble Numbat
Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
birthday 🇬🇧 ist ein Kommandozeilen-Programm, das an Geburtstage oder andere Ereignisse erinnert und diese auf der Kommandozeile (auf Wunsch auch in einem textbasierten Kalender) ausgibt. Bei Geburtstagen erfolgt die Ausgabe in Englisch, andere Ereignisse werden in der Sprache ausgegeben, die man bei der Eingabe verwendet hat.
Installation¶
Folgendes Paket muss installiert [1] werden:
birthday (universe)
Befehl zum Installieren der Pakete:
sudo apt-get install birthday
Benutzung¶
Die allgemeine Syntax sieht wie folgt aus [2]:
birthday [OPTIONEN]
Da das Programm in der Voreinstellung Einträge aus der versteckten Datei [3] ~/.birthdays liest, muss diese zuerst angelegt werden. Mit einem Editor [4] können Geburtstage oder andere Ereignisse eingetragen werden. Ein einfacher Eintrag für eine Geburtstagserinnerung kann folgendermaßen aussehen:
Max Mustermann=25/10/1998
Der anschließende Aufruf von
birthday
im Terminal erzeugt am 05.10.2011 folgende Ausgabe:
Max Mustermann is 13 years old in 2 weeks and 6 days' time.
Optionen¶
Wie oben bereits erwähnt, kennt birthday einige Optionen, die hier aufgeführt werden.
Programmoptionen | |
Option | Beschreibung |
-w | Listet die bevorstehenden Ereignisse auf |
-c | Zeigt die Kalenderansicht |
-f file | Liest die Ereignisse aus der Datei file anstatt aus ~/.birthdays. Die Datei file sollte in diesem Fall mit absolutem Pfad angegeben werden. |
Mehr zu den Optionen von birthday erfährt man in der Manpage.
Format Datendatei¶
Jede Zeile in der Datei ~/.birthdays, die mit einer Raute (#
) beginnt, ist ein Kommentar und wird nicht beachtet. Jede andere Zeile besteht aus dem Namen, einer Person oder eines Ereignisses, gefolgt von einem Gleichheitszeichen (=
) und einem Datum in der Form TT/MM
oder TT/MM/JJJJ
(TT, MM
: Tag/Monat zweistellig; JJJJ
: Jahr, vierstellig). Zum Schluss folgt ein Kürzel, das die Art des Ereignisses beschreibt.
Optionen innerhalb der Datendatei | ||
Kürzel | Beschreibung | Beispiel |
bd | Diese Zeile ist ein Geburtstag (Standard). Das Jahr sollte das Jahr der Geburt sein. | Max Mustermann=25/10/1998 bd |
ann | Diese Zeile ist ein Jahrestag. | Hochzeitstag=25/10/2011 ann |
ev | Diese Zeile ist ein Ereignis irgend einer Art. Wenn das Jahr angegeben wird, wird das Ereignis nur in diesem Jahr angezeigt, ansonsten jedes Jahr. | Konzert=25/10/2011 ev |
w[x] | Warnt x Tage im voraus. Voreinstellung: 21 Tage. | Hochzeitstag=25/10/2011 ann w10 |
to[x] | Das Ereignis dauert bis Datum x. Das angegebene Datum sollte das selbe Format wie das Datum des Ereignisses haben. | GP Deutschland=25/10/2011 ev to28/10/2011 |
for[x] | Das Ereignis dauert x Tage. | GP Deutschland=25/10/2011 ev for3 |
Automatische Anzeige der Ereignisse nach dem Anmelden¶
Methode 1¶
Man legt einen Eintrag im Autostart [5] an und trägt als Befehl folgendes ein:
x-terminal-emulator -e "bash -c '/usr/bin/birthday; read'"
Nun öffnet sich nach dem Anmelden am Desktop das jeweilige Standard-Terminalprogramm und zeigt die anstehenden Ereignisse an. Durch Drücken der Taste ⏎ wird das Terminalfenster geschlossen.
Methode 2¶
Man lässt sich die Ereignisse über den Benachrichtigungsdienst anzeigen. Dazu muss das folgende Paket installiert werden [1]:
libnotify-bin (main)
Befehl zum Installieren der Pakete:
sudo apt-get install libnotify-bin
Entweder man legt einen Eintrag im Autostart an und trägt folgenden Befehl ein:
bash -c '/usr/bin/notify-send -t 0 "Geburtstage" "$(/usr/bin/birthday)"'
Oder man erstellt sich ein Skript unter /usr/local/bin mit folgendem Inhalt:
1 2 3 | #!/bin/bash OUTPUT=$(/usr/bin/birthday) /usr/bin/notify-send -t 0 "Geburtstage" "$OUTPUT" |
speichert es z.B. unter dem Namen birthday_notification.sh und macht es ausführbar:
sudo chmod +x /usr/local/bin/birthday_notification.sh
Nun legt man einen Eintrag im Autostart an und trägt als Befehl folgendes ein: /usr/local/bin/birthday_notification.sh
Nach dem Anmelden werden die Ereignisse nun über den Benachrichtigungsdienst angezeigt. Falls man das automatische Schließen der Anzeige bevorzugt, kann man -t 0
weglassen.
Tipps¶
Hat man mehrere Ereignisse an einem Tag und möchte, dass diese in chronologischer statt in alphabetischer Reihenfolge angezeigt werden, so kann man diese Einträge folgendermaßen gestalten
18:00 Uhr Konzert=08/10/2011 ev 14:00 Uhr Probe=08/10/2011 ev 20:00 Uhr Konzert=08/10/2011 ev 15:00 Uhr Probe=08/10/2011 ev 12:00 Uhr Lesung=08/10/2011 ev
Die Ausgabe sähe dann so aus:
12:00 Uhr Lesung in 2 days' time. 14:00 Uhr Probe in 2 days' time. 15:00 Uhr Probe in 2 days' time. 18:00 Uhr Konzert in 2 days' time. 20:00 Uhr Konzert in 2 days' time.
Links¶
Projektseite 🇬🇧
when - Terminkalender für die Konsole
Osmo - grafischer Terminkalender, der bei Geburtstagen benachrichtigen kann
GBirthday 🇬🇧 - GTK-Panel-Applet
JBirthdays 🇬🇧 - weitere grafische Alternative auf Basis von Java 7