Olá, sou novato no shell então estou aqui buscando uma ajuda, tenho um script q estou usando para verificar a conectividade de certos ips para saber quando eles estao online ou offline, mas me deparei com a seguinte situação quando coloco o script rodar ele estara me informando a cada 30s quais os ips estao on ou off me dando data e hora, mas eu preciso q ele me forneça a data e hora q certo ip caiu pela primeira vez retornando e me informar somente quando esse certo ip voltar, não me informando a cada 30s que ele continua off assim renovando a data e a hora.
#!/bin/bash
while :;
do
ListaHosts=arquivo.txt
diretorio=$(pwd)
Arquivo=logs/arquivo2.txt
cat $ListaHosts | while read ip
do
ping -c5 $ip > /dev/null
if [ $? = 0 ]; then
echo "ONLINE - $ip: `date +"%d/%m - %H:%M"`" >> $Arquivo
else
echo "OFFLINE - $ip: `date +"%d/%m - %H:%M"`" >> $Arquivo
fi
done
sort -u $Arquivo
sleep 30s
done