-----提供AD\Exchange\Lync\Sharepoint\CRM\SC\O365等微軟產品實施及外包,QQ:185426445.電話18666943750shell
對於管理員來講須要常常測試線上系統的服務運行狀態,powershell的send-mailmessage命令是運用比較頻繁的,命令以下:ide
一、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)spa
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)server
三、咱們能夠把這個密碼轉換成密文密碼保存下來,供powershell直接調用,命令以下:blog
$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)圖片
四、發送一封帶附件的說明郵件
$nMsg = "
<br>您好!</br>
<br>附件是您企業的用戶郵箱狀態報告:</br>
<b><br>這是一封系統自動發出的郵件,請不要直接回復或轉發這封郵件。</br></b>
<br>有任何疑問請郵件聯繫<a href=mailto:185426445@qq.com>專業技術支持</a></br>
"get
$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) it
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"