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
- ↑ a b cal-Spezifikation der Open Group. Abgerufen am 24. Juni 2014 (englisch).