1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
| #!/bin/bash -x
#### Variables ####
ADDRESSBOOK=" /addressbook/addressbook"
LOG=" /addressbook/log/ajout_mail_addressbook.log"
DATE=`date +"%Y-%m-%d"`
LISTE_MAIL=" /addressbook/a_verifier.txt"
#### Verification du fichier mailuser.txt #####
cat /addressbook/a_verifier.txt | while read "LISTE_NEW"
do
if [ ! -s $LISTE_MAIL ]
then
echo "Merci de renseigner le fichier $LISTE_MAIL"
echo "ainsi : Nom Prenom:email@provider.com"
exit 0
fi
### Verification du fichier Générer ###
> /addressbook/listeusermail
awk 'NF != 2 { print }' $A_VERIFIER > /addressbook/listeusermail
if [ -s /addressbook/listeusermail ]
then
echo "le fichier mailuser.txt doit contenir 3 champs : Nom Prenom:email@provider.com"
echo "Veuillez verifier le contenu du fichier : $LISTE_MAIL"
exit 0
fi
cat /addressbook/addressbook | while read ADDRESSBOOK_READ
do
echo-e $ADDRESSBOOK_READ
##### Vérification si l utilisateur existe deja ####
> /addressbook/listeusermail
#Detail des possibilité de recherche
NOM=$( echo $LISTE_NEW | sed "s/:/\\ /g" |awk '{print $1}')
NOM_PRENOM=$( echo $LISTE_NEW | sed "s/:/\\ /g" |awk '{print $1,$2}')
PRENOM_NOM=$( echo $LISTE_NEW | sed "s/:/\\ /g" |awk '{print $2,$1}')
#EMAIL=$( echo $LISTE_NEW | sed "s/:/\\ /g" |awk '{print $3}')
EMAIL=$( echo $LISTE_NEW | sed "s/:/\\ /g" | awk '{print $(NF-0)}')
#récupération du mail pour replace ancien > nouveau si changement
ADDRESSBOOK_MAIL=$(echo $ADDRESSBOOK_READ | sed "s/:/\\ /g" | awk '{print $(NF-0)}')
#si $NOM est trouvé, vérification si prenom_nom puis mail ou vérification nom_prenom puis mail
echo $ADDRESSBOOK_READ | grep -s $NOM
if [ $? -eq 0 ]
then # grep de la présence nom + prenom
echo $ADDRESSBOOK_READ | grep -s $NOM_PRENOM
if [ $? -eq 0 ]
then #grep la présence du mailuser
echo $ADDRESSBOOK_READ | grep -s $EMAIL
if [ $? -ne 0 ]
then
echo "L'utilisateur $NOM_PRENOM à changer d'email"
# modification du mailuser dans l'addressbook
sed "s/$ADDRESSBOOK_READ_MAIL/$EMAIL/g" >> $ADDRESSBOOK
fi
fi
echo $ADDRESSBOOK_READ | grep -s $PRENOM_NOM
if [ $? -eq 0 ]
then #grep la présence du mailuser
echo $ADDRESSBOOK_READ | grep -s $EMAIL
if [ $? -ne 0 ]
then
echo "L'utilisateur $PRENOM_NOM à changer d'email"
# modification du mailuser dans l'addressbook
sed "s/$ADDRESSBOOK_READ_MAIL/$EMAIL/g" >> $ADDRESSBOOK
fi
fi
else #si l'utilisateur n'a pas que le nom, grep du nom et du mail, si non présent: ajout dans l'addressbook
echo grep -s $NOM $ADDRESSBOOK_READ |grep -s $EMAIL
if [ $? -eq 0 ]
then echo
echo "L'utilisateur $NOM à changer d'email"
# modification du mailuser dans l'addressbook
sed "s/$ADDRESSBOOK_READ_MAIL/$EMAIL/g" >> $ADDRESSBOOK
fi
fi
echo $ADDRESSBOOK_READ | grep -s $NOM
if [ $? -ne 0 ]
then # grep de la présence nom + prenom
echo $ADDRESSBOOK_READ | grep -s $PRENOM_NOM
if [ $? -ne 0 ]; #si n'est pas grep prenom_nom + mail
then
echo $ADDRESSBOOK_READ | grep -s $NOM_PRENOM
if [ $? -ne 0 ] #si n'est pas grep nom + mail
then echo "ajout dans l'addressbook de $NOM_PRENOM:$EMAIL "
cat /addressbook/listeusermail | while read i
do # ajout dans l'addressbook
MAIL=`echo $i | awk '{ print $3 }'`
#var=`echo $i | awk '{ print $1, $2":"$3 }'`
echo $var
#echo $MAIL
echo $var >> $ADDRESSBOOK
echo "L adresse mail de $i a ete ajoutee à l addressbook"
echo -e "$DATE \t\t Ajout de l email $MAIL a l addressbook " >> $LOG
done
fi
fi
fi
#fi
done
done |
Partager