如何忽略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基础
如何熟悉值得收藏的项目?

火爬 ————— https://git …

Linux基础
如何解决su命令源限制报错?

1 前言 一个问题,一篇文章,一出故事。 笔者最近使用如下命令切换用户, su – tidb 收到如 …

Linux基础
如何安装DBeaver的旧版本MySQL驱动?

1 前言 一个问题,一篇文章,一出故事。 最近笔者的DBeaver 24.1.5需要连接一台很老旧的 …