perl 邮件发送示例详解

一、使用 Mail::Sender模块
先申请一个163的邮箱;

#!/usr/bin/perl
use warnings;
use strict;
use Mail::Sender;

my $sender = new Mail::Sender
{
  smtp    => 'smtp.163.com',
  from    => 'your_mail@163.com",helvetica; line-height:18px">  auth    => "LOGIN",helvetica; line-height:18px">  authid  => "yourmail",helvetica; line-height:18px">  authpwd => "your_mail_password"
} or die "error";
my $message = "hello,give you some message";
if($sender-> MailMsg ({
             to      => 'want_to@gmail.com',helvetica; line-height:18px">             subject => "test",helvetica; line-height:18px">             msg     =>  $message,})<0)
  die "$Mail::Sender::Error/n";
}
$sender->Close();
二、使用Net::SMTP_auth
use strict; use Net::SMTP_auth;

&send_mail();
print "send mail over\n";
# mail_user should be your_mail@163.com
sub send_mail{
  my $to_address  = 'want_to@gmail.com';
  my $mail_user   = 'your_mail@163.com';
  my $mail_pwd    = 'your_mail_password';
  my $mail_server = 'smtp.163.com';
  my $from    = "From: $mail_user\n";
  my $subject = "Subject: here comes the subject\n";
  my $message = <<CONTENT; 
  **********************
    here comes the content
    **********************
CONTENT
  my $smtp = Net::SMTP->new($mail_server,helvetica; line-height:18px">                            Timeout =>120,helvetica; line-height:18px">                            Debug   =>1) or die "ERROR! $!";
  $smtp->auth('LOGIN',$mail_user,$mail_pwd) || die "Auth Error! $!";
  $smtp->mail($mail_user);
  $smtp->to($to_address);
  $smtp->data();             # begin the data
  $smtp->datasend($from);    # set user
  $smtp->datasend($subject); # set subject
  $smtp->datasend($message); # set content
  $smtp->dataend();
  $smtp->quit();

相关文章

1. 如何去重 #!/usr/bin/perl use strict; my %hash; while(...
最近写了一个perl脚本,实现的功能是将表格中其中两列的数据...
表的数据字典格式如下:如果手动写MySQL建表语句,确认麻烦,...
巡检类工作经常会出具日报,最近在原有日报的基础上又新增了...
在实际生产环境中,常常需要从后台日志中截取报文,报文的形...
最近写的一个perl程序,通过关键词匹配统计其出现的频率,让...