
Quero criar alertas de expiração de conta, portanto, preciso escrever um script que possa me alertar antes de 1 mês de expiração por e-mail. Estou trabalhando no Linux.
Posso obter informações de expiração em 03/27/2015. Quero que restem 31 dias em 03/27/2015, determinando a data atual, para que eu possa receber um alerta por e-mail. Não consigo escrever uma declaração if correta.
Responder1
Não tenho certeza de onde você está preso porque não forneceu muitas informações ou exemplos, mas você pode considerar os seguintes comandos:
chage -l userName
para verificar a data de expiração da senha de um usuáriomail
enviar um e-mail para o usuário ou para o administrador (ou ambos) (como dito por Graeme em seu comentário)
Com esses dois comandos, você poderá escrever um script simples para verificar a expiração da senha.
Você também pode usar crontab
para agendamento (diariamente, por exemplo).
EDITAR:
Após sua edição com mais informações, você pode tentar o seguinte:
# Get the current date in seconds since 1970
current_date=`date "+%s"`
# Convert the date you want to check in seconds since 1970
date_to_check=`date -d 2015/03/31 +"%s"`
# Calculate the difference in seconds
date_diff=`expr $date_to_check - $current_date`
# Check whether the difference is greater than 31 days (2678400 seconds)
if [ `expr $date_diff - 2678400` -gt 0 ]
then
echo More than 31 days left
else
echo Less than 31 days left
fi