
cmd shell
1 前言
一个问题,一篇文章,一出故事。
笔者使用PowerShell发送邮件时,由于收件人列表包含错误的或称为会被拒绝的邮箱地址而发送失败,失败范例如下,
Send-MailMessage -From "server@cmdschool.org" -To "user01@example.com" -Cc "will@cmdschool.org, steven@cmdschool.org" -Subject "Test Email" -Body "This is a test email." -SmtpServer "smtp.cmdschool.org"
2 最佳实践
$subject = "Test Email" $body = "This is a test email." $smtpServer = "smtp.cmdschool.org" $from = "server@cmdschool.org" $recipients = @("user01@example.com", "will@cmdschool.org", "steven@cmdschool.org") foreach ($recipient in $recipients) { Send-MailMessage -From $from -To $recipient -Subject $subject -Body $body -SmtpServer $smtpServer -ErrorAction Ignore }
如上所示,
– 使用“Send-MailMessage”命令的“- ErrorAction Ignore”参数直接忽略发送错误
– 使用foreach逐个地址发送,以避免单个地址影响其他地址的发送
没有评论