Powershell管理系列(三十四)PowerShell操作之Send-MailMessage

简介:

对于管理员来说需要经常测试线上系统的服务运行状态,powershell的send-mailmessage命令是运用比较频繁的,命令如下:

1、Send-MailMessage -From zhouping@yuntcloud.com -To "185426445@qq.com" -Subject "test" -Credential "test04@yuntcloud.com" -SmtpServer mail.yuntcloud.com -Port 587

wKiom1f89hihqPcXAAAxmHUVeQY182.png-wh_50


2、发送中文字符邮件时候会出现字符乱码,我们需要加上参数-Encoding ([System.Text.Encoding]::UTF8)

Send-MailMessage -From zhouping@yuntcloud.com -To "185426445@qq.com" -Subject "test" -Credential "test04@yuntcloud.com" -SmtpServer mail.yuntcloud.com -Port 587 -Encoding ([System.Text.Encoding]::UTF8)


3、我们可以把这个密码转换成密文密码保存下来,供powershell直接调用,命令如下:

$UserName = "zhouping@yuntcloud.com"      #定义管理员账户名称
$Password = ConvertTo-SecureString Aa543cd -AsPlainText –Force
$cred = New-Object System.Management.Automation.PSCredential($UserName,$Password) 
Send-MailMessage -From zhouping@yuntcloud.com -To "185426445@qq.com" -Subject "test" -Credential $cred -SmtpServer mail.yuntcloud.com -Port 587 -Encoding ([System.Text.Encoding]::UTF8)


4、发送一封带附件的说明邮件
$nMsg = " 
<br>您好!</br>
<br>附件是您企业的用户邮箱状态报告:</br>
<b><br>这是一封系统自动发出的邮件,请不要直接回复或转发这封邮件。</br></b>
<br>有任何疑问请邮件联系<a href=mailto:185426445@qq.com>专业技术支持</a></br>
"

$date = get-date #获取当前日期
$nSmtpserver = "mail.yuntcloud.com"
$nFrom = "zhouping@yuntcloud.com"
$nTo = "185426445@qq.com"
$nSubject = "企业邮箱用户最新使用情况, $date"

$UserName = "zhouping@yuntcloud.com"      #定义管理员账户名称
$Password = ConvertTo-SecureString Aa543cd -AsPlainText –Force
$cred = New-Object System.Management.Automation.PSCredential($UserName,$Password)

send-mailmessage -BodyAsHtml -subject $nSubject -Smtpserver $nSmtpserver -From $nFrom -To $nTo -body $nMsg -Attachments ("c:\企业用户邮箱最新使用情况.csv","c:\企业存档邮箱最新使用情况.csv") -Credential $cred -SmtpServer mail.yuntcloud.com -Port 587 -Encoding ([System.Text.Encoding]::UTF8)

write-host "完成,企业邮箱用户及存档邮箱最新使用情况已发送给 $nTo"



本文转自 zhou_ping 51CTO博客,原文链接:http://blog.51cto.com/yuntcloud/1860876,如需转载请自行联系原作者


相关文章
|
弹性计算 关系型数据库 数据库
使用ROS部署ECS+SqlServer资源并通过PowerShell操作数据库
本文介绍如何通过ROS部署ECS+RDS+SqlServer资源,以及如何通过PowerShell操作SqlServer数据库。 注意:附录模板和截图中的commandtext部分仅为演示作用,请根据需求修改后使用。
使用ROS部署ECS+SqlServer资源并通过PowerShell操作数据库
|
数据安全/隐私保护