[Perl] Comment envoyer le contenu d'un fichier text par mail

Comment envoyer le contenu d'un fichier text par mail [Perl] - Perl - Programmation

Marsh Posté le 03-02-2010 à 16:49:27    

Hello,
 
J'ai un script qui s'execute en cron, et qui m'écrit un fichier log. Il m'envoit par mail si tout s'est bien passé ou non. J'aimerais recevoir dans le contenu de Data =>, le contenu de mon fichier log..  
 
Je ne vois pas comment faire
 
merci

Reply

Marsh Posté le 03-02-2010 à 16:49:27   

Reply

Marsh Posté le 03-02-2010 à 17:58:02    

J'utilise la commande shell Unix  

cat fichier.log | /bin/mailx -v -s "Voici un log" mon_aadresse@mon_site.com


L'option -v est facultative, et permet de voir les messages d'erreurs éventuels, par exemple si le système n'est pas bien paramètré pour envoyer des mails.

Reply

Marsh Posté le 03-02-2010 à 20:07:13    

Donc -v produit un log. Mais faut-il envoyer le log d'envoi du log ?  [:edhelas]

Reply

Marsh Posté le 04-02-2010 à 11:19:27    

merci !

Reply

Marsh Posté le 04-02-2010 à 14:27:34    

Sinon, pour envoyer un mail avec perl, il faut utiliser le package Mail::Sendmail. Ca marche sur toutes les plates formes, et c'est simple a mettre en oevre.
L'exemple de base sur CPAN:

Code :
  1. #!/usr/local/bin/perl
  2.  
  3. use Mail::Sendmail;
  4.  
  5. %mail = ( To      => 'you@there.com',
  6.          From    => 'me@here.com',
  7.          Message => "This is a very short message"
  8.        );
  9.  
  10. sendmail(%mail) or die $Mail::Sendmail::error;
  11.  
  12. print "OK. Log says:\n", $Mail::Sendmail::log;


A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed