Provided by: manpages-fr_4.13-4_all 

NOM
zic - Compilation des informations de fuseau horaire
SYNOPSIS
zic [ option ... ] [ fichier ... ]
DESCRIPTION
Zic lit le texte dans les fichiers indiqués sur la ligne de commande et crée les fichiers d'information
pour les conversions horaires indiquées dans ces fichiers. Si un nom de fichier est “-”, l’entrée
standard est lue
OPTIONS
version
Afficher le numéro de version et quitter.
help Afficher un bref message d'aide et terminer.
b bloat
Sortie des données pour rétrocompatibilité comme lorsque bloat (gonflement) est indiquée. Si bloat
est fat (gros), générer des entrées supplémentaires de données qui contournent les bogues
potentiels et les incompatibilités avec d’anciens logiciels, tels que ceux gérant mal les données
en 64 bits. Si bloat est slim (mince), faire que les fichiers de sortie soient petits. Cela peut
aider à vérifier les bogues et les incompatibilités. Bien que la valeur par défaut soit
actuellement fat, il est prévu de la changer dans les versions futures de zic car de toute façon
les logiciels gérant mal les données en 64 bits communément gèrent mal les estampilles temporelles
pour les années après 2038. Consultez aussi l’option r pour une autre façon de modifier la sortie.
d répertoire
Créer les fichiers d'informations pour les conversions horaires dans le répertoire indiqué plutôt
que dans le répertoire standard indiqué plus bas.
l fuseau_horaire
Utiliser le fuseau horaire indiqué comme heure locale. zic agira comme si l'entrée contenait une
ligne de lien de la forme :
Link fuseau_horaire heure_locale
L fichier_secondes_rattrapage
Lire les informations concernant les secondes de rattrapage périodique à partir du fichier
indiqué. Si cette option n'est pas indiquée, aucune seconde de rattrapage ne sera prise en compte
dans les fichiers de sortie.
p fuseau_horaire
Utiliser les règles de conversions horaires du fuseau indiqué lors de la gestion des chaînes non
standard telles que « EET2EEST » qui n’ont pas de règle de transition. zic agira comme si l'entrée
contenait une ligne de lien de la forme :
Link fuseau_horaire règles_posix
Cette fonctionnalité est obsolète et faiblement prise en charge. Entre autres choses, elle ne
devrait pas être utilisée pour les estampilles temporelles après l’année 2037, et elle ne devrait
pas être combinée avec b slim si les transitions de fuseau_horaire sont au temps standard ou
universel (UT) au lieu du temps local.
r [@bas][/@haut]
Réduire la taille des fichiers de sortie en limitant leur applicabilité aux estampilles
temporelles dans l’intervalle bas (inclus) à haut (exclus), où bas et haut sont des montants
décimaux de secondes pouvant être signés depuis l’origine des temps Époque (Epoch — 1970-01-01
00:00:00 UTC). Les montants omis prennent par défaut les valeurs extrêmes. Par exemple, “zic -r
@0” omet les données pour des estampilles temporelles négatives (c'est-à-dire, avant l’Époque) et
“zic -r @0/@2147483648” produit des données pour des estampilles temporelles non négatives qui
tiennent dans des entiers signés de 31 bits. Sur les plateformes avec date de GNU, “zic -r @$(date
+%s)” omet les données des estampilles temporelles du passé. Consultez aussi l’option b slim pour
une autre façon de réduire la taille de la sortie.
t fichier
Lors de la création des informations de temps local, mettre le lien de configuration dans le
fichier indiqué plutôt que dans l’emplacement standard.
v Être prolixe et dénoncer les situations suivantes :
L’entrée indique un lien pour un lien.
Une année apparaissant dans un fichier de données est en dehors de l’intervalle représentable.
Un temps de 24:00 ou plus apparaît dans l’entrée. Les versions avant 1998 de zic interdisaient
24:00 et celles avant 2007 un temps de plus de 24:00.
Une règle conduit avant le début du mois ou après sa fin. Les versions avant 2004 de zic
interdisaient cela.
Une abréviation de fuseau horaire utilise le format %z. Les versions avant 2015 de zic ne le
prennent pas en charge.
Une estampille temporelle contient des fractions de seconde. Les versions avant 2018 de zic ne les
prennent pas en charge.
L’entrée contient des abréviations qui sont mal gérées par les versions avant 2018 de zic à cause
d’un vieux bogue de code. Ces abréviations incluent “L” pour “Link”, “mi” pour “min”, “Sa” pour
“Sat”, et “Su” pour “Sun”.
Le fichier de sortie ne contient pas toutes les informations pour le futur d’un fuseau horaire,
car le futur ne peut être synthétisé sous forme de chaîne TZ POSIX étendue. Par exemple, en 2019
ce problème s’est produit pour les règles de jour d’été pour la prévision du futur, car ces règles
sont basées sur le calendrier iranien qui ne peut être représenté.
La sortie contient des données qui ne peuvent être gérées correctement par le code du client,
conçu pour les anciens formats de sortie de zic. Ces problèmes de compatibilité affectent
seulement les estampilles temporelles d’avant 1970 ou d’après le début de 2038.
Le fichier de sortie contient plus de 1200 transitions, qui pourraient être mal gérées par
quelques clients. Le client de référence actuel gère au plus 2000 transitions. Les versions
d’avant 2014 du client de référence gèrent au plus 1200 transitions.
Une abréviation de fuseau horaire est de moins de trois caractères ou de plus de six caractères.
POSIX en requiert au moins trois et requiert que les implémentations en gèrent au moins six.
Un nom de fichier contient un octet qui n’est pas une lettre ASCII. “-”, “/”, ou “_”; ou il
contient un composant de nom de plus de 14 octets ou commençant par “-”.
FICHIERS
Les fichiers d’entrée utilisent le format décrit dans cette section. Les fichiers de sortie utilisent le
format de tzfile(5).
Les fichiers d’entrée doivent être des fichiers texte, c'est-à-dire, ils doivent être une série de zéro
ou plus de lignes, chacune se terminant par un octet de nouvelle ligne, contenant au plus 511 octets et
sans octet NULL. L’encodage du texte d’entrée est classiquement en UTF-8 ou ASCII. Il doit avoir une
représentation monooctet pour PPCS (POSIX Portable Character Set ⟨http://pubs.opengroup.org/onlinepubs/
9699919799/basedefs/V1_chap06.html⟩ et les caractères sur plusieurs octets doivent consister entièrement
d’octets non PPCS. Ces caractères non PPCS apparaissent classiquement dans les commentaires : bien que
tous les noms de fichier et toutes les abréviations de fuseau horaire puissent contenir n’importe quel
caractère, d’autres logiciels fonctionneront mieux s’ils sont limités à la syntaxe restreinte décrite
dans l’option v.
Les lignes d'entrées sont composées de champs, séparés les uns des autres par un ou plusieurs caractères
blancs. Les caractères blancs sont : espace, saut de page, retour chariot, nouvelle ligne, tabulation et
tabulation verticale. Les espaces en début et fin de ligne sont ignorées. Un caractère dièse « # » non
protégé en entrée introduit un commentaire qui s'étend jusqu'à la fin de la ligne où il apparaît. Les
caractères blancs et les dièses peuvent être inclus entre guillemets « " » lorsqu'ils doivent faire
partie d'un champ. Toute ligne vide (après suppression des commentaires) est ignorée. Les lignes non
vides peuvent être de trois types : les lignes de règle, de zone et de lien.
Les noms doivent être en anglais et sont indifférents à la casse. Ils apparaissent dans plusieurs
contextes et incluent les noms de mois, de fin de semaine et des mots-clés tels que maximum, only,
Rolling et Zone. Un nom peut être abrégé par son commencement, mais toute abréviation ne doit pas être
ambiguë pour le contexte.
Une ligne de règle est de la forme :
Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Par exemple :
Rule US 1967 1973 Apr lastSun 2:00w 1:00d D
Les champs composant une ligne de règle sont :
NAME (NOM)
Nom de l’ensemble de règles contenant cette ligne. Le nom doit débuter par un caractère qui n’est
ni un chiffre ASCII ni “-” ni “+”. Pour permettre des extensions futures, un nom non protégé ne
doit pas contenir des caractères de l’ensemble “!$%&'()*,/:;<=>?@[\]^`{|}~”.
FROM Première année pour laquelle la règle s'applique. Tout nombre entier signé correspondant à une
année peut être utilisé. On suppose qu'il s'agit du calendrier grégorien proleptique, l’année 0
précédant l’année 1. Le mot minimum (ou une abréviation) correspond à un passé indéfini. Le mot
maximum (ou une abréviation) correspond à un futur indéfini. Les règles peuvent décrire des dates
qui ne sont pas représentables par des valeurs de time(2), celles-ci étant ignorées. Cela permet
aux règles d'être portables quels que soient les types de date employés par la machine hôte.
TO Dernière année pour laquelle la règle s'applique. En plus des mots minimum et maximum (comme
précédemment), le mot only (ou une abréviation) permet de réutiliser la valeur du champ FROM.
TYPE doit être “-” et est présent pour la compatibilité avec les anciennes versions de zic dans
lesquelles il peut contenir des types d’année.
IN Mois auquel la règle prend effet. Les noms de mois peuvent être abrégés.
ON Jour auquel la règle prend effet. Les formes acceptées comprennent :
5 Le 5 du mois
lastSun Le dernier dimanche du mois
lastMon Le dernier lundi du mois
Sun>=8 Le premier dimanche après ou le 8
Sun<=25 Le dernier dimanche avant ou le 25
Un nom de jour (par exemple, Sunday) ou un nom précédé par “last” (par exemple, lastSunday)
peuvent être abrégés ou complètement libellés. Il ne doit pas y avoir d'espace au sein du champ
ON. Les constructions “<=” et “>=” peuvent aboutir à un jour dans le mois voisin. Par exemple, la
combinaison IN-ON “Oct Sun>=31” positionne au premier dimanche suivant ou après le 31 octobre
même si ce dimanche arrive en novembre.
AT Heure du jour à laquelle la règle prend effet, relativement à 00:00, le début d’une journée
calendaire. Les formes acceptées sont :
2 temps en heures
2:00 temps en heures et minutes
01:28:14 temps en heures, minutes et secondes
00:19:32.13 temps avec des secondes fractionnaires
12:00 midi, 12 heures après 00:00
15:00 3 après-midi, 15 heures après 00:00
24:00 fin du jour, 24 heures après 00:00
260:00 260 heures après 00:00
2:30 2,5 heures avant 00:00
équivalent à 0
Bien que zic arrondisse les temps à la seconde entière la plus proche, (en cas d’égalité à la
valeur entière paire), les fractions peuvent être utiles pour des applications nécessitant une
précision supérieure. Le format du source ne spécifie aucune précision maximale. Toutes ses
formes peuvent être suivies par la lettre w si le temps indiqué est local ou de “wall clock” s si
le temps indiqué est le temps standard sans ajustement pour l’heure d’été ou u (ou g ou z) si le
temps indiqué est le temps universel. En l’absence d’indicateur, l’heure locale (horloge) est
supposée. Ces formes ignorent les secondes additionnelles. Par exemple, si une seconde
intercalaire est ajoutée à l’heure locale 00:59:60, “1:00” correspond à 3601 secondes après le
minuit local au lieu des 3600 secondes habituelles. Le but est que la ligne de règle décrive
l’instant auquel une horloge ou un calendrier définis pour le type de temps précisé dans le champ
AT afficherait la date et l’heure du jour.
SAVE Montant du temps à ajouter au temps local standard quand la règle est appliquée et si le temps
résultant est standard ou à l’heure d’été. Ce champ a le même format que le champ AT à
l’exception d’un ensemble différent de lettres de suffixe : s pour le temps standard et d pour
l’heure d’été. La lettre de suffixe est classiquement omise, et par défaut vaut s si le décalage
est zéro et d autrement. Les décalages négatifs sont autorisés. En Irlande, par exemple, l’heure
d’été est respectée en hiver et a un décalage négatif par rapport à l’heure d’été irlandaise
standard. Le décalage est simplement ajouté au temps standard. Par exemple, zic ne fait pas la
distinction entre un temps standard de 10:30 plus un SAVE de 0:30 d’un temps standard de 10:00
plus un SAVE de 1:00.
LETTER/S
Affectation de la “variable part” (par exemple, “S” ou “D” dans “EST” ou “EDT”) des abréviations
de fuseau horaire à utiliser quand cette règle est appliquée. Si ce champ est “-”, la part
variable est nulle
Une ligne de zone est de la forme :
Zone NAME STDOFF RULES FORMAT [UNTIL]
Par exemple :
Zone Asia/Amman 2:00 Jordan EE%sT 2017 Oct 27 01:00
Les champs constituant une ligne de zone sont les suivants :
NAME (NOM)
Nom du fuseau horaire. Il s'agit du nom utilisé pour la création du fichier de données de
conversions horaires pour cette zone. Il ne doit pas contenir un composant de nom de fichier “."”
ou “..”; Un composant de nom de fichier est une sous-chaîne maximale qui ne contient pas “/”.
STDOFF
Quantité de temps à ajouter au temps universel pour obtenir l'heure standard sans aucun ajustement
pour l’heure d’été. Ce champ a le même format que les champs AT et SAVE des lignes de règle. Le
champ débute avec un signe moins « - » si la quantité doit être soustraite de l’UTC.
RULES Noms des règles qui s'appliquent dans cette zone, ou bien un champ du même format qu’une colonne
SAVE de la ligne de règle, donnant la quantité horaire à ajouter au temps local standard de la zone
et si le temps résultant est standard ou à l’heure d’été. Si ce champ est , l'heure standard
s'applique toujours dans cette zone.
FORMAT
Format pour les abréviations de fuseau horaire. La paire de caractères %s est utilisée pour montrer
où la “variable part” de l’abréviation de fuseau horaire est attribuée. Alternativement, un format
peut utiliser la paire de caractères %z pour indiquer le décalage de temps universel sous la forme
±hh, ±hhmm ou ±hhmmss, en utilisant la forme la plus courte ne perdant aucune information, où hh,
mm et ss sont les heures, minutes et secondes est (+) ou ouest (−) du temps universel.
Alternativement, une barre oblique (/) sépare les abréviations de temps standard et d’heure d’été.
Pour se conformer à POSIX, une abréviation de fuseau horaire doit contenir uniquement des
caractères ASCII alphanumériques, “+” et “-”.
UNTIL Moment où changent le décalage par rapport à l'UTC ou les règles pour le lieu. Ce moment est
indiqué sous la forme d’un des quatre champs YEAR [MONTH [DAY [TIME]]]. Si cela est spécifié, les
informations pour le fuseau horaire seront créées à partir de la modification de la règle ou du
décalage UTC jusqu'au moment indiqué, interprété en utilisant la règle appliquée juste avant la
transition. Les mois, jour et heure du jour ont le même format que pour les champs IN, ON et AT
d'une règle. Les colonnes qui suivent peuvent être omises, leur valeurs par défaut étant les
premières valeurs possibles.
La ligne suivante doit être une ligne de “continuation” Elle a la même forme qu’une ligne de zone
excepté que la chaîne “Zone” et le nom sont omis, car la ligne de continuation placera les
informations débutant au temps indiqué comme l’information “until” dans la ligne précédente dans le
fichier utilisé par la ligne précédente. Les lignes de continuation peuvent contenir des
informations “until” tout comme les lignes de zone le font, indiquant que la ligne suivante est une
continuation supplémentaire.
Si une zone change au même moment qu’une règle aurait pris effet dans la zone précédente ou dans la ligne
de continuation, la règle est ignorée. Une zone ou une ligne de continuation L avec un ensemble de règles
nommé débute avec le temps standard par défaut : c'est-à-dire, n’importe quelle estampille temporelle de
L précédant la règle de L précédente utilise la règle en usage après la première transition de L dans le
temps standard. Dans une même zone, c’est une erreur si deux règles prennent effet au même moment ou si
deux modifications de zone se produisent au même moment.
Une ligne de lien est de la forme :
Link CIBLE NOM-LIEN
Par exemple :
Link Europe/Istanbul Asia/Istanbul
Le champ CIBLE doit exister sous forme de champ NAME dans une ligne de zone. Le champ NOM-LIEN sert de
lien alternatif pour cette zone. Il possède la même syntaxe que le champ NAME de la ligne de zone.
Sauf pour celles de continuation, les lignes peuvent apparaitre dans n’importe quel ordre dans l’entrée.
Cependant, le comportement est indéfini si plusieurs lignes de zone ou de lien définissent le même nom ou
si la source d’un lien est la cible de l’autre.
Le fichier décrivant les secondes de rattrapage périodique peut comporter une ligne de saut et une ligne
d’expiration. Les lignes de rattrapage ont la forme suivante :
Leap YEAR MONTH DAY HH:MM:SS CORR R/S
Par exemple :
Leap 2016 Dec 31 23:59:60 + S
Les champs YEAR, MONTH, DAY et HH:MM:SS indiquent quand la seconde de rattrapage se produit. Le champ
CORR doit être “+” si une seconde a été ajoutée ou “-” si une seconde a été sautée. Le champ R/S doit
être (une abréviation de) “Stationary” si le temps de la seconde de rattrapage indiqué par les autres
champs doit être interprété comme UTC ou (une abréviation de) “Rolling” si le temps de la seconde de
rattrapage indiqué par les autres champs doit être interprété comme celui local (horloge).
Une ligne d’expiration, si elle existe, est de la forme :
Expires YEAR MONTH DAY HH:MM:SS
Par exemple :
Expires 2020 Dec 28 00:00:00
Les champs YEAR, MONTH, DAY et HH:MM:SS indiquent l’estampille temporelle d’expiration en UTC pour la
table des secondes de rattrapage. zic produit cette estampille temporelle en tronquant la fin du fichier
de sortie pour l’estampille temporelle. S’il n’existe pas de ligne d’expiration, zic accepte aussi un
commentaire “#expires E ..."” où E est l’estampille temporelle d’expiration sous forme de nombre entier
décimal depuis l’Époque, sans tenir compte des secondes de rattrapage. Cependant, le commentaire
“#expires” est une fonctionnalité obsolète et le fichier de secondes de rattrapage devrait utiliser une
ligne d’expiration plutôt que de reposer sur un commentaire.
EXEMPLE APPROFONDI
Voici un exemple étendu d’entrée de zic, conçu pour illustrer la plupart de ses fonctionnalités. Dans cet
exemple, les règles EU valent pour L’Union européenne et pour son prédécesseur, La Communauté européenne.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Swiss 1941 1942 May Mon>=1 1:00 1:00 S
Rule Swiss 1941 1942 Oct Mon>=1 2:00 0
Rule EU 1977 1980 Apr Sun>=1 1:00u 1:00 S
Rule EU 1977 only Sep lastSun 1:00u 0
Rule EU 1978 only Oct 1 1:00u 0
Rule EU 1979 1995 Sep lastSun 1:00u 0
Rule EU 1981 max Mar lastSun 1:00u 1:00 S
Rule EU 1996 max Oct lastSun 1:00u 0
# Zone NAME STDOFF RULES FORMAT [UNTIL]
Zone Europe/Zurich 0:34:08 LMT 1853 Jul 16
0:29:45.50 BMT 1894 Jun
1:00 Swiss CE%sT 1981
1:00 EU CE%sT
Link Europe/Zurich Europe/Vaduz
Dans cet exemple le fuseau horaire est appelé Europe/Zurich mais il a un alias, Europe/Vaduz. Cet exemple
indique que Zurich était 34 minutes et 8 secondes à l’est du TU jusqu’au 16/07/1853 à 00:00, quand le
décalage officiel a été changé à 7°26′22.50″, qui mène au résultat 0:29:45.50. zic le traite en
l’arrondissant à 0:29:46. Après le 01/06/1894 à 00:00, le décalage du TU est devenu une heure et les
règles suisses d’heure d’été (définies par les lignes commençant avec “Rule Swiss”) ont été appliquées.
De 1981 à maintenant, les règles d’heure d’été de l’EU ont été appliquées et le décalage de TU est
demeuré d’une heure.
En 1941 et 1942, l’heure d’été s’est appliquée du premier lundi de mai à 01:00 jusqu’au premier lundi
d’octobre à 02:00. Les règles d’heure d’été de l’UE avant 1981 n’ont aucun effet ici mais sont incluses
pour complétude. Depuis 1981, l’heure d’été commence le dernier dimanche de mars à 01:00 UTC et se
terminait le dernier dimanche de septembre à 01:00 UTC, mais cela a changé pour le dernier dimanche
d’octobre depuis 1996.
Dans un but d’affichage, “LMT” et “BMT” ont été initialement utilisés respectivement. Depuis que les
règles suisses et plus tard les règles de l’UE ont été appliquées, l’abréviation de fuseau horaire a été
CET pour le temps standard et CEST pour l’heure d’été.
FICHIERS
/etc/localtime
Fichier par défaut du fichier de fuseau horaire.
/usr/share/zoneinfo
Répertoire par défaut d’information de fuseau horaire.
NOTES
Pour les zones ayant plus de deux types d'heure locale, il peut être nécessaire d'utiliser l'heure locale
standard dans le champ AT de la première règle de transition pour s'assurer que la première heure de
transition du fichier compilé soit correcte.
Si, pour une zone horaire, une avance d’horloge provoquée par le début de l’heure d’été coïncide et est
égal avec un recul d’horloge provoqué par un changement de décalage de TU, zic produit une transition
unique vers l’heure d’été au nouveau décalage de TU sans modification du temps local (horloge). Pour
obtenir des transitions séparées, plusieurs lignes de continuation de zone, précisant les moments de
transition au temps universel, sont à utiliser.
VOIR AUSSI
tzfile(5), zdump(8)
COLOPHON
Cette page fait partie de la publication 5.10 du projet man-pages Linux. Une description du projet et des
instructions pour signaler des anomalies et la dernière version de cette page peuvent être trouvées à
l'adresse https://www.kernel.org/doc/man-pages/.
TRADUCTION
La traduction française de cette page de manuel a été créée par Christophe Blaess
<https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud
<tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard
<fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau
<jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François
<nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard
<simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot
<david@tilapin.org> et Jean-Paul Guillonneau <guillonneau.jeanpaul@free.fr>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License
version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à
debian-l10n-french@lists.debian.org.
13 août 2020 ZIC(8)