[debutant] Envoi d'un mail avec pièce jointe
Bonjour,
j'envoie un mail avec une pièce jointe, le mail fonctionne très bien. Seulement, j'ai un problème avec les pièces jointes.
Quand j'envoie un mail qui ne possède d'une seule pièce jointe, je reçois la pièce jointe plus un fichier .txt vide.
Je voudrais ajouter une condition sur les pièces jointes. Si il n'y a pas de pièce ne pas envoyer de fichier.txt.
J'ai testé avec un IF...then...else mais ça ne fonctionne pas :-(
Code:
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
|
cat << EOMAIL | /usr/lib/sendmail -t
From: ${expediteur}
To: ${destinataires}
CC: ${copiedestinataires}
Subject: ${sujet_mail}
Content-Type: multipart/mixed;
boundary="------------pjboundary"
--------------pjboundary
Content-Type: text/html; charset=iso-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
`cat ${fichier_corps_du_mail}`
--------------pjboundary
`mpack -s "" -o /dev/stdout $piecejointe | nawk 'BEGIN {imprime=-1} {if (imprime > 0 && index($0,"---")==0) { print $0} if (index($0,"---") == 1) {imprime*=-1} }'`
--------------pjboundary
`mpack -s "" -o /dev/stdout $piecejointe_2 | nawk 'BEGIN {imprime=-1} {if (imprime > 0 && index($0,"---")==0) { print $0} if (index($0,"---") == 1) {imprime*=-1} }'`
EOMAIL
if ($piecejointe_2 == " " ) then
echo "***** Attention pas de pièce jointe n°2 ***** " >> $SPLGTJOB
else
echo Pièce jointe n°2: ` basename $piecejointe_2`>> $SPLGTJOB
end-if
echo De:` basename $expediteur` >> $SPLGTJOB
echo A: ` basename $destinataires`>> $SPLGTJOB
echo CC: ` basename $copiedestinataires`>> $SPLGTJOB
echo Sujet du mail: ` basename $sujet_mail`>> $SPLGTJOB
echo Corps du mail :`cat $fichier_corps_du_mail`>> $SPLGTJOB
echo Pièce jointe: ` basename $piecejointe`>> $SPLGTJOB
echo Pièce jointe n°2: ` basename $piecejointe_2`>> $SPLGTJOB
echo "">> $SPLGTJOB
echo "envoi du mail OK" >> $SPLGTJOB
exit |
merci d'avance
LILO