cal (Unix)
cal ist ein Standardprogramm unter UNIX und UNIX-ähnlichen Betriebssystemen, das einen Kalender auf dem Standard-Ausgabekanal ausgibt. Sein Funktionsumfang und sein Verhalten ist durch den POSIX-Standard festgelegt[1].
Geschichte
cal ist eines der ältesten Unix-Programme überhaupt. Es war bereits in der allerersten AT&T UNIX Version 1 (auf der PDP-7) vorhanden.
Verhalten
Der POSIX-Standard sieht – neben dem für Kommandozeilen-Programme üblichen Ein- und Ausgabeverhalten – vor, dass für Daten zwischen dem 1. Januar des Jahres 1 und dem 2. September des Jahres 1752 der julianische, ab dem 14. September 1752 bis zum 31. Dezember 9999 hingegen der gregorianische Kalender ausgegeben wird.[1] Insbesondere liefert der Monat der Umstellung – September 1752, was der Kalenderreform in den angelsächsischen Ländern entspricht – die Ausgabe (AIX 7.1.3 SP3, LANG=C):
# cal 9 1752
September 1752
Sun Mon Tue Wed Thu Fri Sat
1 2 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Für Daten v. u. Z. bzw. ab dem 1. Januar 10000 ist das Verhalten von cal nicht spezifiziert. Seine Funktionsweise wird durch locale-Variablen wie auch die eingestellte Zeitzone (Environment-Variable TZ) beeinflusst.
cal verwendet ausdrücklich vierstellige Jahreszahlen. Das Kommando "cal 99" liefert weder den Kalender für 1999 noch für 2099, sondern den für 99 u. Z.
Einzelnachweise
- cal-Spezifikation der Open Group. Abgerufen am 24. Juni 2014 (englisch).