使用僅密件副本的 powershell 發送電子郵件

使用僅密件副本的 powershell 發送電子郵件

我需要找到一種方法向 30 個人發送電子郵件,我不希望他們抄送,我希望他們每個人都能收到郵件,因為看起來這封郵件只發給他。我知道我可以使用 Outlook,並將「收件者」留空,只將這些郵件地址傳送到密件副本。這是一個很好的解決方案,但我需要它自動化。我找不到使用 send-mailmessage powershell cmd 來執行相同操作的方法。我得到的關閉方法是將其發送給自己,然後密件抄送給所有人,或者運行一個循環,使用 -to 參數發送一封又一封郵件。兩者對我都不好。無論如何我可以做到嗎?

答案1

同意大衛的觀點。

根據我的研究,-To 參數是必要參數,這可能有助於防止它成為垃圾郵件引擎。因此,根據您對 Powershell 的要求,您可以嘗試輸入您自己的電子郵件地址或類似“[電子郵件受保護]“ 在 To 字段中。

答案2

使用 cmdlet Send-MailMessage 無法執行要求的操作,但是您可以使用 .net 類別net.mail來實現您想要的操作。請參閱下面的內容,您可以將其合併到您的腳本中。

$SMTPserver = "<SMTP Endpoint>"
$fromAddress = "[email protected]"
$subject = "<Subject>"
$emailbody = "<body of email>"
$bccAddresses = @("[email protected]","[email protected]","[email protected]")

$mailer = new-object Net.Mail.SMTPclient($SMTPserver)
$msg = new-object Net.Mail.MailMessage

Foreach ($emailAddress in $bccAddresses){
    $msg.bcc.add($emailAddress)
}

$msg.Subject = $Subject
$msg.Body = $emailbody
$msg.From = $fromAddress


$mailer.send($msg)

相關內容