如何忽略PowerShell错误邮件地址?

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逐个地址发送,以避免单个地址影响其他地址的发送

没有评论

发表回复

Linux基础
如何部署onlyOffice documentServer 9.0.0?

1 基础知识 1.1 onlyOffice的简介 – onlyOffice Docume …

Linux基础
如何部署Oracle Linux 9.x RabbitMQ?

1 基础知识 1.1 RabbitMQ的简介 – RabbitMQ拥有成千上万的用户,是 …

Linux基础
如何部署onlyOffice documentServer 9.3.1?

1 基础知识 1.1 onlyOffice的简介 – onlyOffice Docume …