Votre IP: 38.107.179.241 
  
 
Google
 
Accueil e-mail Linux
Linux
Perl
Perl
C
Langage C
Dico
Dictionnaire
Biblio liens
Bibliothèque de liens
Index articles
Index articles
 

Date création : 27-03-2008 20:23:44

Linux  Vous êtes dans : GNU/Linux Astuces / Pages man [Section3 - Sous-fonctions]


TZSET

 

Index

  1. NOM
  2. SYNOPSIS
  3. DESCRIPTION
  4. FICHIERS
  5. CONFORMITÉ
  6. NOTES
  7. VOIR AUSSI
  8. TRADUCTION

 

NOMIndex

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

SYNOPSISIndex

#include <time.h>

void tzset (void);

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

DESCRIPTIONIndex

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 Système 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, 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. Le 29 février n'est jamais compté, même pendant les années bissextiles.
n
Indique le jour julien, avec n compris entre 1 et 366. 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 02:00:00.
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.  

FICHIERSIndex

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ÉIndex

SVr4, POSIX.1-2001, BSD 4.3  

NOTESIndex

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 AUSSIIndex

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

TRADUCTIONIndex

Cette page de manuel a été traduite et mise à jour par Christophe Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par Alain Portal <aportal AT univ-montp2 DOT fr> jusqu'en 2006.
La traduction de cette page de manuel est basée sur les traductions disponibles sur http://manpagesfr.free.fr/, mais est gérée par l'équipe francophone de traduction de Debian au travers de la liste de discussion debian-l10n-french.
Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « man -L C <section> <page_de_man> ».


Création : octobre 2007  © Tous droits réservés 2007 linux-perl-c
Valid HTML 4.01 TransitionalValid CSS