perl发邮件代码(备份)

 保存一下,在你的代码中require它即可

 
 
  1. =head  
  2. need install module Net::SMTP_auth,  
  3. you can type the following command at  
  4. your shell prompt  
  5. cpan -i Net::SMTP_auth  
  6. =cut  
  7.   
  8. use Net::SMTP;  
  9. use Fcntl qw/:DEFAULT :flock/;  
  10.   
  11. sub sendmail {  
  12.     my $msg = shift;  
  13.   
  14.     my $smtp = Net::SMTP->new(  
  15.                               Host    => 'smtp.163.com',  
  16.                               Timeout => 120,  
  17.                               Debug   => 1  
  18.                              );  
  19.   
  20.     if (defined $smtp) {  
  21.         $smtp->auth("xxx","xxx");  
  22.         $smtp->mail("xxx\@163.com");  
  23.         $smtp->to("xxx\@126.com");  
  24.         $smtp->data();  
  25.   
  26.         $smtp->datasend("From: Server Monitor <xxx\@163.com>\n");  
  27.         $smtp->datasend("To: SA team <sa\@abc.com>\n");  
  28.         $smtp->datasend("Subject: Server Warnings\n");  
  29.         $smtp->datasend("\n");  
  30.         $smtp->datasend("$msg\n");  
  31.   
  32.         $smtp->datasend();  
  33.         $smtp->quit;  
  34.   
  35.     }  
  36. }  
  37.   
  38. sub printlog {  
  39.     my $str = shift;  
  40.     open LOG,'>>','log.txt' or die "$!\n";  
  41.     flock LOG,LOCK_EX;  
  42.     print LOG "$str\n";  
  43.     flock LOG,LOCK_UN;  
  44.     close LOG;  
  45. }  
  46.  
  47. sub daemon { 
  48. my $pid = fork(); 
  49. die "can't fork progress: $!\n" unless defined $pid; 
  50. exit 0 if $pid; 
  51. setsid() or die "can't create a new session: $!\n"; 
  52.  
  53. open STDIN,'<','/dev/null'; 
  54. open STDOUT,'>','/dev/null'; 
  55. open STDERR,'>&',STDOUT; 
  56.  
  57. chdir "/"; 
  58. umask 022; 
  59. $ENV{'PATH'} = '/bin:/sbin:/usr/bin:/usr/sbin'; 
  60.  
  61. return $$; 
  62. }
  63.  
  64. 1;  

 本文转自dongfang_09859 51CTO博客,原文链接:http://blog.51cto.com/hellosa/669622,如需转载请自行联系原作者

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值