[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Script para comparar datas
From: |
Alysson Gonçalves de Azevedo |
Subject: |
Re: [shell-script] Script para comparar datas |
Date: |
Thu, 12 Jul 2012 15:42:56 -0300 |
Você pode calcular a diferença de segundos (ou horas, dias) entre agora e a
data que lhe interesse.
Por exemplo, use o *grep* para pegar a linha "notAfter" e o *cut* para o
campo após o '*=*'.
Depois, faça assim:
date_after=$(./check_cert.sh | grep notAfter | cut -d'=' -f2)
seg_agora=$(date -u +%s)
seg_fim_cert=$(date --date="$date_after" +%s)
dae é só ver a diferença entre seg_agora e seg_fim_cert. Se for menor que N
segundos, dispara o email
ou algo assim.
Alysson Gonçalves de Azevedo
(11) 8491-7730
Em 12 de julho de 2012 15:16, Renato Sousa <address@hidden> escreveu:
> **
>
>
> Boa tarde amigos da lista!
>
> Preciso desenvolver um script que analisa a data de expiração de
> alguns certificados SSL e, antes do vencimento, avise a equipe com
> email para a renovação do mesmo.
> Esse script ficará em um FreeBSD rodando sh. Procurei na internet e
> encontrei o comando abaixo:
>
> #!/bin/sh
> echo "GET / HTTP/1.1" | openssl s_client -connect
> webmail.XXX.XXX.XX:443 2>/dev/null | sed -ne '/-BEGIN
> CERTIFICATE-/,/-END CERTIFICATE-/p' | openssl x509 -noout -subject
> -dates | tail -2
>
> A execução retorna:
> sh check_cert.sh
> notBefore=Mar 23 00:00:00 2012 GMT
> notAfter=Mar 23 23:59:59 2013 GMT
>
> Agora que vem a zica!!!! Como manipular essas datas ? É melhor
> converte-las em epoch (segundos desde 1/1/1970) ?
> Estou olhando o man do date freebsd, mas ainda não encontrei a
> solução!!! Alguém me ajuda ?
>
> Abraços,
>
> Renato
>
>
[As partes desta mensagem que não continham texto foram removidas]