shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Horário de verão


From: Fabiano Caixeta Duarte
Subject: Horário de verão
Date: Tue, 16 Sep 2008 17:04:20 -0300

Senhores,

Levando em consideração que o nosso horário de verão passou de
variável a parametrizável
(http://www.mme.gov.br/site/news/detail.do?newsId=16838&currentArea=),
imagino que surgirão alternativas para atualização automática.

Conforme decreto, o horário de verão se inicia no terceiro domingo de
outubro e termina no terceiro domingo de fevereiro do ano subsequente

Pra quem não usa alternativas como tzdata ou similares, segue um
script que deve funcionar se executado entre março e setembro.

Eu na verdade não gostei muito da função terceiroDomingo e aceito
sugestões de melhoria.

Abraço a todos.

#!/bin/bash
# Sugestão: executar via crontab a cada dia 1º de outubro

----------------------------------------------------------------------
TMP=$(mktemp -p /tmp verao.XXXXXX)

ANO_INI=$(date +%Y)
ANO_FIM=$((ANO_INI+1))

function terceiroDomingo() {
# $1: mês
# $2: ano
        cal $1 $2 | sed 1,2d | awk 'NF == 7 {print}' | sed '3!d' | cut -d" " -f1
}

DIA_INI=$(terceiroDomingo 10 $ANO_INI)
DIA_FIM=$(terceiroDomingo 02 $ANO_FIM)

cat << EOF >> $TMP
Rule Brazil $ANO_INI only - Oct $DIA_INI 00:00 1 S
Rule Brazil $ANO_FIM only - Feb $DIA_FIM 00:00 0 -

Zone Brazil/East -3:00 Brazil BR%sT
EOF

zic $TMP

rm $TMP
----------------------------------------------------------------------

-- 
Fabiano Caixeta Duarte
Especialista em Redes de Computadores
Linux User #195299
Ribeirão Preto - SP


reply via email to

[Prev in Thread] Current Thread [Next in Thread]