windows下发送文件到邮箱,使用VBS发送邮件
linux下可以使用mutt来发送邮件,很方便。之前使用的VPS空间里,只有写好脚本,使用MUTT就可以定时备份数据库,发送到指定的邮箱了。而且不用设置发件的邮箱地址。
那么windows下怎么发送附件到指定的邮箱呢?
我开始想windows可不可以使用mutt,有是有但安装很麻烦。搜索了一下资料,还是使用VBS来发送比较好。配合bat批处理命令就可以备份数据库,发送到指定的邮箱了。
VBS源代码如下:
NameSpace = "http://schemas.microsoft.com/cdo/configuration/" Set Email = CreateObject("CDO.Message") Email.From = "账号@qq.com" Email.To = "要发送到的账号@qq.com" Email.Subject = "Test sendmail.vbs" Email.Textbody = "OK!" Email.AddAttachment "D:\dfj.zip" With Email.Configuration.Fields .Item(NameSpace&"sendusing") = 2 .Item(NameSpace&"smtpserver") = "smtp.qq.com" .Item(NameSpace&"smtpserverport") = 25 .Item(NameSpace&"smtpauthenticate") = 1 .Item(NameSpace&"sendusername") = "账号" .Item(NameSpace&"sendpassword") = "密码" .Update End With Email.Send
这里要注意把邮箱的smtp,pop3服务开启,不然是发送不成功的。如果你没开启,QQ系统也会自动发邮件通知你(这点很人性化)
有什么问题大家可以和我交流,QQ 1508496092
设置如图
设置好后就可以测试啦~
批处理中的转义符:
引:
在我们维护的服务器中,有一台服务器要显示“上证/深证”指数图,不知写代码的同事出于什么原因,需要维护的人员每天早上开盘前改一个html文件中的日期到当天日期。
我想这样用规律的操作用bat不就可以了吗(此服务器为windows系统)?
BAT就是用echo打印内容并追加到那个文件名后不就可以了吗?
问题:
对于html的代码当然少不了"< >",如<html>,那么,我们都知道“<”和“>”两个符号分别代表“输入重定向”和“输出重定向”,所以直接 echo <html>中不可以的。那就要用到转义符号了!
要点:转义符号
//在windows下输出<html>字串的方法:
C:\>
echo ^<html^>
<html>
<html>
//在linux下输出<html>字串的方法:
# echo \<html\>
<html>
<html>
总结:
windows下转义符号用“^”;linux下转义用"\"