cal (Unix)

Standardprogramm auf verschiedenen Betriebssystemen

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

Bearbeiten

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

Bearbeiten

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

Bearbeiten
  1. a b cal-Spezifikation der Open Group. Abgerufen am 24. Juni 2014 (englisch).