5 votes

Linux obtient le décalage UTC du fuseau horaire actuel (ou autre) à une date et une heure données.

Au Chili, le cas est très particulier puisque les jours de changement d'heure sont différents d'une année sur l'autre...

Existe-t-il une fonction permettant d'obtenir le décalage UTC pour un jour donné à une heure UTC donnée ?

J'ai vu sur un Documentation Suse que quelque chose comme zdump -v /usr/share/zoneinfo/Chile/Continental Cela me permet d'obtenir tous les changements à travers les années, mais le travail doit être fait quand même... une commande pour faire cela ?

Ou/et existe-t-il une fonction permettant de convertir une date et une heure données d'un fuseau horaire donné en UTC ? Et son inverse ?

Comment linux gère-t-il ces changements ? Je n'ai pas trouvé plus de documentation que celle de Suse.

5voto

umayanga Points 153

Vous pouvez utiliser le date commande. Vous définissez le fuseau horaire, puis vous indiquez la date et l'heure. La commande renverra cette heure avec le -03 ou le -04, ce qui vous permettra de savoir si l'heure d'été était en vigueur.

Par exemple, pour le Chili/Continental :

Avant le changement d'heure cette année :

$ TZ=Chile/Continental date --date='2020-04-03 11:00 +00'
Fri Apr  3 11:00:00 -03 2020

Après le changement de l'heure d'été cette année :

$ TZ=Chile/Continental date --date='2020-04-06 11:00 +00'
Mon Apr  6 11:00:00 -04 2020

Pour annuler cela, il suffit de régler TZ sur UTC et de modifier le décalage :

$ TZ=UTC date --date='2020-04-03 11:00 -04'

0voto

Philippe Gachoud Points 1417

Sur la base de Eduardo Trápani la réponse finale pour moi était

  • TZ=Chile/Continental date --date='TZ=Chile/Continental date --date='2020-04-05 02:00:15 +00' +%z ce qui donne -0300
  • TZ=Chile/Continental date --date='2020-04-05 04:00:15 +00' +%z ce qui donne -0400

Liste des zones

ls -l /usr/share/zoneinfo/

Voir les détails d'une zone particulière

zdump -v /usr/share/zoneinfo/Chile/Continental

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X