用Perl发送邮件小例子

据传,Perl发送邮件有很多方案,但我只会用Mail::Sender这种方式,也就只能简单谈谈这种方式。

在参考众多网页后,程序书写如下:

#!/usr/bin/perl -w
use Mail::Sender;

my $sender=Mail::Sender->new({
    ctype=>'text/plain;charset=utf-8',
    encoding=>'utf-8',
    smtp =>'smtp.163.com',
    from =>'budefiang345@163.com',
    auth =>'LOGIN',
    authid =>'budefiang345@163.com',
    authpwd =>'mypassword'}
) or die "Can't send mail.
";

my $msg='Hello,this is a mail built by perl';

$sender->MailMsg({
    to=>'othermail@163.com',
    subject=>'Perl mail sample',
    msg=>$msg}
);
$sender->Close();
print "Mail sent!
";

但是,程序写好后,执行#perl mail.pl,坏了,报出如下类似错误:

Can't locate Mail/Sender.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at mail.pl line 5.
BEGIN failed--compilation aborted at mail.pl line 5.

网上一查,原来是要安装perl的Mail模块,自己摸索了步骤如下:

#yum install perl-CPAN*

#cpan

cpan[1]>install Mail::Sender

cpan[2]>quit

之后Mail模块就安装好了,再执行#perl mail.pl,发现邮件已经送到指定邮箱了。

就是这些,虽然途中有点着急上火,但结果还是达成期望了。

2017年1月20日17:12:37

原文地址:https://www.cnblogs.com/heyang78/p/6323368.html