msoliver
(usa Debian)
Enviado em 29/06/2020 - 16:47h
MatheusVianna escreveu:
msoliver escreveu:
Boa noite Matheus.
Segue sugestão:
whois vivaolinux.com.br|awk '/expires:/ {print $2}'|sed -r 's/(.{4})(.{2})(.{2})/\1-\2-\3/'
2020-09-06
Ou
whois vivaolinux.com.br|awk '/expires:/ {print $2}'
20200906
______________________________________________________________________
Importante: echo -e "\n$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')\n"
Att.: Marcelo Oliver
______________________________________________________________________
Muito obrigado pela ajuda, isso "indiretamente" resolveu outro problema meu que é o formato das datas, que antes ficava exposto de uma forma confusa. Porém eu ainda precisaria de um output numérico só com os dias restantes, como esse script de verificação de certificado SSL que encontrei.
data=`echo | openssl s_client -servername $1 -connect $1:443 2>/dev/null | openssl x509 -noout -enddate | sed -e 's#notAfter=##'`
ssldate=`date -d "${data}" '+%s'`
nowdate=`date '+%s'`
diff="$((${ssldate}-${nowdate}))"
echo $((${diff}/86400))
Pelo que entendi, ele compara a data de hoje com a data de expiração do certificado e faz a subtração. Tentei durante dias entender e fazer isso com o comando whois, mas não consegui :/
Boa tarde Matheus,
Segue sugestão.
Informe somente o domínio como parâmetro.
#!/bin/bash
(($#==0)) && { echo -e "ERRO\nArgumento inválido";exit 1;}
data=$(whois $1|awk '/expires:/ {print $2}'|sed -r 's/(.{4})(.{2})(.{2})/\1-\2-\3/');
[ -z ${data} ] && { echo "Erro ao executar o comando WHOIS para $1";exit 1;}
dias=$(awk '{printf "%.2f" ,($1-$2)/$3}' <<< "$(date -d"${data}" +%s) $(date +%s) 86400");
stt=$(bc <<< "${dias}>0");
((${stt} == 1)) && echo "Faltam ${dias} dias para renovar o domínio" || echo "Renovação vencida há ${dias/-} dias"
______________________________________________________________________
Importante: echo -e "\n$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')\n"
Att.: Marcelo Oliver
______________________________________________________________________