cal (Unix)

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir CAL.

cal est le nom du programme sous UNIX qui permet d'afficher le calendrier. Son nom provient de l'anglais "calendar" (calendrier). Il existe aussi une version améliorée, ncal. Ces commandes sont aujourd'hui disponibles sur de nombreux systèmes, parmi lesquels GNU/Linux, FreeBSD, NetBSD, OpenBSD ou Mac OS X.

Historique[modifier | modifier le code]

La commande cal est apparue dans la version 5 d'UNIX AT&T. La commande ncal est une implémentation de la commande UNIX cal réalisée pour la version 2.2.6 de FreeBSD.

Syntaxe[modifier | modifier le code]

Pour afficher le calendrier du mois en cours au format américain, il suffit d'exécuter la commande suivante :

$ cal
    Octobre 2008
Di Lu Ma Me Je Ve Sa
          1  2  3  4
 5  6  7  8  9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

Cependant, le format français s'obtient avec un paramètre :

$ cal -m
    Octobre 2008
Lu Ma Me Je Ve Sa Di
       1  2  3  4  5
 6  7  8  9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

ncal utilisera le format de la langue locale, et affichera le calendrier dans l'autre sens :

$ ncal
    octobre 2008
lu     6 13 20 27   
ma     7 14 21 28   
me  1  8 15 22 29   
je  2  9 16 23 30   
ve  3 10 17 24 31   
sa  4 11 18 25      
di  5 12 19 26


Utilisations[modifier | modifier le code]

Cette commande permet de retourner toutes les dates existantes, par exemple "cal 2010" renverra le calendrier de toute cette année.

Il est alors possible d'en extraire les informations telles que le numéro du premier lundi du mois, pour les comparer à la date actuelle afin par exemple d'exécuter une tâche planifiée (voir les exemples dans crontab).

Bogue[modifier | modifier le code]

La commande ne tient pas compte de l'indication $LOCALE qui permettrait de faire apparaître le passage du calendrier julien au calendrier grégorien, celui-ci n'ayant pas eu lieu au même moment dans les pays catholiques et les autres. Ainsi, pour la France le calendrier devrait faire passer directement du 4 au 15 octobre pour l'année 1582.

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]