timezone: como obter as regras

1

Como posso ver minhas regras atuais de fuso horário?

Eu descobri que era para configurá-lo ( tzdata , zic , /etc/timezone ), mas não como ir na outra direção. (Os arquivos em /usr/share/zoneinfo são binários e não consigo lê-los; talvez eles tenham sido compilados com zic ?)

Como sei se e quais regras de TZ estão em vigor (por exemplo, a mudança para / de DST)?

    
por chris01 16.02.2017 / 14:26

1 resposta

2

Você já sabe sobre zic , que compila os arquivos da zona de origem para os binários que você vê em /usr/share/zoneinfo . Escondido na parte inferior da página man é uma referência a zdump , e isso acaba na ferramenta que você está procurando ( zdump - time zone dumper ).

Veja alguns exemplos de saída para o fuso horário usado na França, mostrando a data / hora de salto do horário de verão dos dois anos de 2017 e 2018.

zdump -V -c 2017,2019 Europe/Paris
Europe/Paris  Sun Mar 26 00:59:59 2017 UT = Sun Mar 26 01:59:59 2017 CET isdst=0 gmtoff=3600
Europe/Paris  Sun Mar 26 01:00:00 2017 UT = Sun Mar 26 03:00:00 2017 CEST isdst=1 gmtoff=7200
Europe/Paris  Sun Oct 29 00:59:59 2017 UT = Sun Oct 29 02:59:59 2017 CEST isdst=1 gmtoff=7200
Europe/Paris  Sun Oct 29 01:00:00 2017 UT = Sun Oct 29 02:00:00 2017 CET isdst=0 gmtoff=3600
Europe/Paris  Sun Mar 25 00:59:59 2018 UT = Sun Mar 25 01:59:59 2018 CET isdst=0 gmtoff=3600
Europe/Paris  Sun Mar 25 01:00:00 2018 UT = Sun Mar 25 03:00:00 2018 CEST isdst=1 gmtoff=7200
Europe/Paris  Sun Oct 28 00:59:59 2018 UT = Sun Oct 28 02:59:59 2018 CEST isdst=1 gmtoff=7200
Europe/Paris  Sun Oct 28 01:00:00 2018 UT = Sun Oct 28 02:00:00 2018 CET isdst=0 gmtoff=3600

Para obter saltos de horário de verão para seu próprio fuso horário é um pouco mais complicado, mas esse comando os retornará para o ano de 2017. Aqui você pode ver que estou no fuso horário do Reino Unido com BST / GMT como rótulos de fuso horário ( horário de verão / inverno):

zdump -V -c2017,2018 $(cat /etc/timezone)
Europe/London  Sun Mar 26 00:59:59 2017 UT = Sun Mar 26 00:59:59 2017 GMT isdst=0 gmtoff=0
Europe/London  Sun Mar 26 01:00:00 2017 UT = Sun Mar 26 02:00:00 2017 BST isdst=1 gmtoff=3600
Europe/London  Sun Oct 29 00:59:59 2017 UT = Sun Oct 29 01:59:59 2017 BST isdst=1 gmtoff=3600
Europe/London  Sun Oct 29 01:00:00 2017 UT = Sun Oct 29 01:00:00 2017 GMT isdst=0 gmtoff=0

Não tenho conhecimento de uma ferramenta para descompilar os binários em /usr/share/zoneinfo de volta para os arquivos de regras. Você provavelmente acharia mais fácil começar com os conjuntos de regras de origem; eles estão facilmente disponíveis.

    
por 16.02.2017 / 15:30

Tags