tzset

TZSET(3)                   Manuel du programmeur Linux                  TZSET(3)



NOM
       tzset, tzname, timezone, daylight - Initialiser des données pour les
       conversions de temps

SYNOPSIS
       #include <time.h>

       void tzset (void);

       extern char *tzname[2]
       extern long timezone;
       extern int daylight;

   Exigences de macros de test de fonctionnalités pour la glibc (consultez
   feature_test_macros(7)) :

       tzset() : _POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE || _POSIX_SOURCE
       tzname : _POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE || _POSIX_SOURCE
       timezone : _SVID_SOURCE || _XOPEN_SOURCE
       daylight : _SVID_SOURCE || _XOPEN_SOURCE

DESCRIPTION
       La fonction tzset() initialise la variable tzname en utilisant la
       variable d'environnement TZ. Cette fonction est appelée automatiquement
       par les autres fonctions de conversion dépendant du fuseau horaire. Dans
       un environnement type System V, elle remplira également les variables
       timezone (secondes à l'ouest de Greenwich) et daylight (à 0 si le fuseau
       n'a pas de changement d'heure saisonnier, ou à une valeur non nulle s'il
       y a des périodes durant l'année où le changement horaire s'applique).

       Si la variable TZ n'apparaît pas dans l'environnement, tzname est
       initialisée avec la meilleure approximation possible de l'heure locale,
       comme indiqué dans le fichier localtime, au format tzfile(5), se trouvant
       dans le répertoire système des fuseaux horaires (voir plus bas). (on
       utilise souvent /etc/localtime ici, en tant que lien symbolique vers le
       répertoire système des fuseaux horaires).

       Si la variable TZ est présente dans l'environnement, mais que sa valeur
       est vide, ou si sa valeur ne peut pas être interprétée en utilisant le
       format indiqué plus bas, l'heure TU (temps universel, ou UTC) est
       utilisée.

       La valeur de TZ peut prendre trois formats différents. Le premier
       correspond à un endroit où il n'y a pas de décalage heure d'hiver/heure
       d'été :

              std offset

       la chaîne std indique le nom du fuseau horaire, constitué d'au moins
       trois caractères alphabétiques. La chaîne offset suivant immédiatement
       std indique la valeur à ajouter à l'heure locale pour obtenir l'heure TU.
       La valeur offset est positive si l'emplacement est à l'ouest du méridien
       0, et négative si elle est à l'est. L'heure doit être entre 0 et 24, les
       minutes et les secondes entre 0 et 59.

       Le deuxième format est utilisé lorsqu'il existe des heures d'hiver et
       d'été différentes :

              std offset dst [offset],start[/time],end[/time]

       Les champs std et offset initiaux indiquent le fuseau horaire comme
       précisé ci-dessus. Les chaînes dst et offset indiquent le fuseau et le
       décalage de la zone correspondant à l'heure d'été. Si l'offset est omis,
       une valeur par défaut est utilisée, correspondant à une heure de décalage
       vers l'avant.

       Le champ start indique la date de début de l'heure d'été, et end indique
       la date de retour à l'heure d'hiver. Ces deux champs utilisent l'un des
       formats suivants :

       Jn     Indique le jour julien, avec n compris entre 1 et 365. Les jours
              intercalaires ne sont pas comptés. Dans ce format, le 29 février
              ne peut pas être représenté. Le 28 février est le jour 59, et le
              1er mars est toujours le jour 60.

       n      Indique le jour julien, avec n compris entre 0 et 365. Le
              29 février est compté pendant les années bissextiles.

       Mm.s.j Indique le jour j (0 <= j <= 6) de la semaine s (1 <= s <= 5) du
              mois m (1 <= m <= 12). La semaine 1 est la première semaine du
              mois dans laquelle le jour j apparaît, et la semaine 5 la dernière
              où le jour j apparaît. Le jour 0 est Dimanche.

       Le champ time indique l'heure du changement, sous forme d'heure locale
       courante. Par défaut, la valeur est 02h00m00s.

       L'exemple suivant correspond à la Nouvelle-Zélande. Son fuseau horaire
       (NZST) est 12 heures en avance sur le temps universel (UTC). L'heure
       d'été (NZDT) est 13 heures en avance sur UTC et débute le premier
       dimanche d'octobre pour finir le troisième dimanche de mars. Le
       changement d'heure s'effectue à 02h00m00s.

           TZ="NZST-12:00:00NZDT-13:00:00,M10.1.0,M3.3.0"

       Le troisième format est utilisé pour indiquer que les informations de
       fuseau horaire doivent être lues depuis un fichier :

              :[filespec]

       Si le fichier filespec n'est pas indiqué, les informations sont lues dans
       le fichier localtime se trouvant dans le répertoire système des fuseaux
       horaires, habituellement /usr/share/zoneinfo. Ce fichier est au format
       tzfile(5). Si filespec est indique, il doit correspondre à un autre
       fichier au format tzfile(5) où on lira les informations. Si filespec ne
       commence pas par un « / », le chemin d'accès est considéré à partir du
       répertoire système des fuseaux horaires.

       Voici un exemple, encore une fois pour la Nouvelle-Zélande :

           TZ=":Pacific/Auckland"

FICHIERS
       Le répertoire système employé pour les fuseaux horaires dépend de la
       version de la bibliothèque C. Les libc4 et libc5 utilisaient
       /usr/lib/zoneinfo, puis, à partir de la libc-5.4.6 le répertoire
       /usr/share/zoneinfo si le premier n'existait pas. La bibliothèque glibc 2
       utilise le contenu de la variable d'environnement TZDIR lorsqu'elle
       existe. Par défaut, c'est normalement /usr/share/zoneinfo.

       Les fichiers se trouvant dans le répertoire sont :
       localtime      fichier d'information horaire locale
       posixrules     règles pour les TZ au format POSIX

       Souvent, /etc/localtime est un lien symbolique vers localtime ou vers le
       fichier correct dans le répertoire système des fuseaux horaires.

CONFORMITÉ
       SVr4, POSIX.1-2001, BSD 4.3.

NOTES
       Remarquez que la variable daylight n'indique pas si le changement d'heure
       saisonnier s'applique au moment de l'appel. Elle indique simplement le
       numéro d'un algorithme (voyez la variable tz_dsttime dans
       gettimeofday(2)). C'est obsolète depuis longtemps, mais obligatoire avec
       SUSv2.

       BSD 4.3 a une routine char *timezone(zone, dst) qui renvoie le nom du
       fuseau horaire correspondant à son premier argument (minutes à l'ouest de
       Greenwich). Si le second argument est 0, le nom standard est fourni,
       sinon c'est le nom avec changement horaire saisonnier.

VOIR AUSSI
       date(1), gettimeofday(2), time(2), ctime(3), getenv(3), tzfile(5)

COLOPHON
       Cette page fait partie de la publication 3.70 du projet man-pages Linux.
       Une description du projet et des instructions pour signaler des anomalies
       peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.

TRADUCTION
       Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a
       <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone
       au sein du projet perkamon <http://perkamon.alioth.debian.org/>.

       Christophe Blaess <http://www.blaess.fr/christophe/> (1996-2003), Alain
       Portal <http://manpagesfr.free.fr/> (2003-2006).  Nicolas François et
       l'équipe francophone de traduction de Debian (2006-2009).

       Veuillez signaler toute erreur de traduction en écrivant à
       <perkamon-fr@traduc.org>.

       Vous pouvez toujours avoir accès à la version anglaise de ce document en
       utilisant la commande « LC_ALL=C man <section> <page_de_man> ».



                                  25 mars 2012                          TZSET(3)