关于powershell:向多人发送个人附件

Email multiple people individual attachments

我正在使用 Send-MailMessage 向多个不同的收件人发送电子邮件,每个收件人都有一个单独的报告。我刚刚使用不同的附件路径为每个收件人重复发送邮件命令,但是我遇到的问题是因为我还必须使用 -UseSsl -credential 我必须在每次发送新邮件时进行身份验证。有没有一种无需每次都验证一次的方法?


Send-MailMessage 是.net smtpclient 的package器。你可以做你的自定义版本,例如:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$client = New-Object System.Net.Mail.SmtpClient
$client.EnableSsl = $true
$client.Host ="smtp.server.com"
$client.Credentials = $creds

foreach ($r in $recipients) {
$from ="[email protected]"
$to = $r
$msg = New-Object System.Net.Mail.MailMessage $from, $to
$msg.Subject ="subject"
$msg.Body ="body"
$msg.Attachments.Add("C:\\temp\\test.html")

$client.Send($msg)
}