C'est ce que je fais actuellement. Par contre, je ne vois pas bien comment faire pour tester l'existance du fichier test. De plus, si le fichier test existe, je n'envoie plus de mail mais dès que le problème est réglé, je veux être informé par mail que le ping est à nouveau OK.
Merci pour votre aide.
Voilà mon script:
#!/bin/bash
#
# Fichier pour éviter les répétitions.
TOUCH=/tmp/test
# déclaration IP
HOSTS="192.168.0.10"
# nombre de ping.
COUNT="3"
# paramètres email.
SUBJECT="10 est en vrac!"
EMAILID="mon_mail"
for myHost in $HOSTS
do
count=$(ping -c $COUNT $myHost | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }')
if [ ! -f $TOUCH ]; then
if [ $count -eq 0 ]; then
echo "10 ne répond plus au ping depuis $(date)" | mail -s "$SUBJECT" $EMAILID
touch $TOUCH
fi
fi
done
[^] # Re: Inversion de tests
Posté par choubaka . En réponse au message Besoin d'aide pour terminer mon petit script.... Évalué à 1.
Cordialement.
[^] # Re: fichier
Posté par choubaka . En réponse au message Aide pour terminer mon script.... Évalué à 1.
C'est ce que je fais actuellement. Par contre, je ne vois pas bien comment faire pour tester l'existance du fichier test. De plus, si le fichier test existe, je n'envoie plus de mail mais dès que le problème est réglé, je veux être informé par mail que le ping est à nouveau OK.
Merci pour votre aide.
Voilà mon script:
#!/bin/bash
#
# Fichier pour éviter les répétitions.
TOUCH=/tmp/test
# déclaration IP
HOSTS="192.168.0.10"
# nombre de ping.
COUNT="3"
# paramètres email.
SUBJECT="10 est en vrac!"
EMAILID="mon_mail"
for myHost in $HOSTS
do
count=$(ping -c $COUNT $myHost | grep 'received' | awk -F',' '{ print $2 }' | awk '{ print $1 }')
if [ ! -f $TOUCH ]; then
if [ $count -eq 0 ]; then
echo "10 ne répond plus au ping depuis $(date)" | mail -s "$SUBJECT" $EMAILID
touch $TOUCH
fi
fi
done