加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl发送邮件(可带附件)

发布时间:2020-12-16 00:21:57 所属栏目:大数据 来源:网络整理
导读:作为软件开发人员,有时需要对服务器上的某些进程进行监控,以便掌握服务器的运行情况。因此当出现异常情况时,邮件提示是个不错的选择,可使开发维护人员及时进行维护处理。 1:利用Mail::Sendmail发送普通邮件 #!/usr/bin/perl use strict; use Mail::Send

作为软件开发人员,有时需要对服务器上的某些进程进行监控,以便掌握服务器的运行情况。因此当出现异常情况时,邮件提示是个不错的选择,可使开发维护人员及时进行维护处理。

1:利用Mail::Sendmail发送普通邮件

#!/usr/bin/perl

use strict;
use Mail::Sendmail;


sendmail
(
From => '123456@gmail.com',

#使用qq或163作为邮件地址时,需设置123456@gmail.com为白名单(否则qq会认为是垃圾邮件而拒收,163不用设置白名单);测试gmail时,gmail认为是不安全的邮件会拒收
To => '123456@qq.com',
Subject => 'Waring',
Message => "sth bad,pls check!!",
);

注:当perl提示模块不存在时,用cpan Mail::Sendmail安装。邮件发送失败时,可查看/var/spool/mail/root日志找出失败原因。


2:利用MIME::Lite发送带附件的邮件

#!/usr/bin/perl

use strict;
use MIME::Lite;

#首先,创建包含邮件各种头信息的 MIME::Lite 对象:
my $msg = MIME::Lite->new(
From => '123456@gmail.com',
To => '123465@qq.com',
Subject => 'Warning',
Type => 'multipart/mixed'
);

#然后用 attach 方法添加附件内容:
$msg->attach(
Type => 'auto',
Path => '/usr/local/sbin/ss.pl',#附件路径
);

MIME::Lite 模块的参数类型决定附件的类型和附件的添加方法:
Path 指定作为附件的文件的路径
Filename 指定接受方保存附件时,附件的默认文件名.如果指定了 Path 参数,那么默认的文件名就是路径中的名字
Data 指定附件添加的日期
Type 指定待添加附件的文件编码类型
Disposition 它的值只能是 inline 和 attachment.前者指定接受方打开邮件的时候附件内容会跟在邮件正文后显示,而不单独作为一个附加物.后者指定接受方应该指定一个附件的解码方 法,并且保存附件,此时会有提示

$msg->send( ); # 默认的方法是用sendmail规则发送

#$msg->send('smtp','mailserver.example.com',Timeout => 30,Debug => 1);# 指定其它的方法

使用MIME::Lite来发送邮件有二种方法 sendmail 和 Net::SMTP.
调用 send 方法时,若第一个参数为“smtp”,则用 Net::SMTP 发送邮件.send的其它参数都传给 Net::SMTP.不加任何的话就是系统的sendmail.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读