perl 发送邮件脚本
use Net::SMTP;
use MIME::Base64;
################
# 自动签到脚本 #
################
$host = '10.182.131.153'; #SMTP服务器地址
###########################
#
# $host: smtp服务器
# $auth: 邮件账户
# $password: 邮件账户密码
# $to: 要发送的目标
# $mail_body: 邮件内容
#
###########################
sub send_mail {
my($host, $auth, $password, $to, $mail_body) = @_;
my $smtp = Net::SMTP->new(
Host => $host,
Hello => $host,
Timeout => 30,
Debug => 1
);
$smtp->auth(substr($auth, 0, index($auth, '@')), $password);
$smtp->mail($auth);
$smtp->to($to);
$smtp->bcc($auth);
$smtp->data();
$smtp->datasend("Content-Type:text/plain;charset=GB2312\n");
$smtp->datasend("Content-Transfer-Encoding:base64\n");
$smtp->datasend("From:$auth \n");
$smtp->datasend("To:$to \n");
$smtp->datasend("Subject:=?gb2312?B?".encode_base64($mail_body,'')."?=\n\n");
$smtp->datasend("\n");
$smtp->datasend(encode_base64($mail_body,'')." \n");
$smtp->dataend();
$smtp->quit;
}
#获取命令行参数
if(@ARGV < 1) {
$conf_file = './mailusers.conf'; #默认配置文件
}
else {
$conf_file = $ARGV[0]; #获取配置文件名
}
#打开配置文件和日志文件
open CONF_FILE, $conf_file or die "Open config file [$conf_file] failed! \n";
open LOG_FILE, '>>send.log' or die "Open send.log failed! $!\n";
while(<LOG_FILE>) {
chomp;
if($_ =~ /^#+/) {
next; #跳过注释行
}
@line = split /\s+/, $_;
if(@line != 4) {
next; #跳过空行
}
#发送邮件
send_mail($host, $line[0], $line[1], $line[2], $line[3]);
print LOG_FILE "[" . localtime() . "] send_mail($host, $line[0], $line[1], $line[2], $line[3]); \n";
}
close CONF_FILE;
close LOG_FILE;
转载于:https://www.cnblogs.com/mouse1/archive/2009/12/15/1624685.html
perl 发送邮件脚本相关推荐
- 用Perl发送邮件小例子
据传,Perl发送邮件有很多方案,但我只会用Mail::Sender这种方式,也就只能简单谈谈这种方式. 在参考众多网页后,程序书写如下: #!/usr/bin/perl -w use Mail::S ...
- win服务器自动发邮件,windows关机前执行脚本设置与关机blat自动发送邮件脚本模板...
windows关机前执行脚本设置与关机blat自动发送邮件脚本模板 发布时间:2020-07-25 02:21:24 来源:51CTO 阅读:3093 作者:nn1183 价值:实时掌握开关机记录: ...
- Shell使用sendemail发送邮件脚本
原文地址:http://www.zixuephp.net/article-400.html shell发送邮件,这里要介绍的是sendemail工具,通过这个工具连接第三方的smtp服务器,进行邮件的 ...
- Perl/CGI脚本语言编程学习资料及开发工具下载大全
Practical Extraction and Report Language Perl 最初的设计者为拉里·沃尔(Larry Wall),它于1987年12月18日发表.Perl借取了C.sed. ...
- python发送邮件脚本_python-发邮件脚本
折腾nagios发邮件好几天,终于完成,我的系统环境是ubuntu12.04,安装postfix服务,先贴上脚本,如下: #!/usr/bin/env python #-*- coding:utf-8 ...
- python发邮件脚本详解_Python发送邮件脚本
在一些场景中经常需要发送邮件, 像是持续集成和运维报警等. 而使用Python脚本能够很快捷方便得实现发送各种邮件的需求.这里就通过Python基于SMTP(Simple Mail Transfer ...
- python发邮件脚本_Python实现的简单发送邮件脚本分享
近来有些东西需要监控报警发邮件,然后在网上找了点材料,自己写了一个简单发送邮件的脚本,主要就是运用python的smtplib模块,分享给大家看一下: #!/usr/bin/env python # ...
- Shell Perl Python 脚本语言介绍
一. Shell 文字操作系统与外部最主要的接口就叫做shell.shell是操作系统最外面的一层.shell管理你与操作系统之间的交互:等待你输入,向操作系统解释你的输入,并且处理各种各样的操作系 ...
- python自动发送邮件脚本
目录 需要开通smtp功能 脚本 需要开通smtp功能 这里举例子使用的163的邮箱,每个邮箱都是一样的,发件邮箱设置即可 163网易免费邮-你的专业电子邮局 脚本 # -*- coding:utf- ...
最新文章
- 解决Windows Installer的错误
- 多分类任务的混淆矩阵
- Mysql 数据库锁表的原因和解决方法
- 怎么提升软件测试质量,【软件测试】涨姿势,测试总监亲授如何做测试质量管理...
- mina 粘包、多包和少包的解决方法
- 怎么做蒙特卡洛计算npv_计算机一级:这该死的“进制转换”,这种题到底怎么做?...
- JS:1.3,函数(function)
- Windows环境下smarty安装简明教程
- C#通过VS连接MySQL数据库实现增删改查基本操作
- mybatis学习(24):分页2 多参数传递(使用注解)
- 罗斯蒙特电磁流量计8723说明书_罗斯蒙特8732E电磁流量计故障原因及解决办法!...
- 在c语言中文件的指针是什么,C语言中文件描述符和文件指针的本质区别
- 语音技术(百度语音)开发 - 第一篇
- html 最小长度单位,html见长度单位尺寸单�?CSS布局HTML
- 用Angular制作单页应用视图切换动画
- python读取log文件_python之文件的读写(文本文档,log文件)
- python opencv对颗粒的计数与计算空洞率
- 深度掌握bin、hex、axf和elf文件格式
- 数值分析课程主要学习内容总结
- 手游沙巴克传奇当前服务器维护,《沙巴克传奇》12月18日安卓、IOS维护公告