HOWTO · Batch

從批處理指令碼傳送電子郵件

本教程將瞭解我們如何使用批處理指令碼傳送郵件。

本頁內容

如果你想通過批處理指令碼傳送電子郵件,你可以關注這篇文章。

使用 PowerShell 從批處理指令碼傳送電子郵件

本文將使用命令提示符和 Windows PowerShell 傳送一封簡單的電子郵件。但是我們的程式碼主要基於 Windows PowerShell,它與 Batch Script 非常相似,也可以使用 Batch Script 執行。

下面共享的通用程式碼格式可以將郵件傳送到特定地址。

Send-MailMessage
-To "Receiver's email address"
-From "Sender's email address"
-Subject "Subject of the message"
-Body "Your message body here"
-Credential (Get-Credential)
-SmtpServer "smtp.YourServer.com"
-Port 587

現在根據你的喜好編輯程式碼,你的示例程式碼將類似於下面的程式碼。下面分享了一個示例,我們將通過該示例將郵件從 alen@gmail.com 傳送到 steve@gmail.com

Send-MailMessage
-To "steve@gmail.com"
-From "alen@gmail.com"
-Subject "Email to Steve"
-Body "Hi Steve, What's going on?"
-Credential (Get-Credential)
-SmtpServer "smtp.gmail.com"
-Port 587

這是 PowerShell 中電子郵件傳送指令碼的最基本外觀。現在讓我們看看示例的每一行發生了什麼。

Send-MailMessage 儲存電子郵件的整個配置和設定,如發件人的電子郵件地址、收件人的電子郵件地址、電子郵件主題、電子郵件正文、伺服器詳細資訊、伺服器埠等。

-To "steve@gmail.com" 設定電子郵件的目的地。我們在這裡包括了我們的收件人電子郵件地址。

-From "alen@gmail.com" 行包含發件人的電子郵件地址;我們在這裡包含了我們伺服器的郵件。我們在這一行提供了電子郵件主題 -主題給史蒂夫的電子郵件``。

-Body "Hi Steve, What's going on?" 行將包括電子郵件的整個訊息正文。 -Credential (Get-Credential) 行用於建立 PSCredential 物件,這些物件提供一組安全憑證,如使用者名稱、密碼等。

Get-Credential 是一個建立證書物件的 PowerShell cmdlet。現在 -SmtpServer "smtp.gmail.com" 行提供了電子郵件的 SMTP 伺服器。

你可以根據自己的要求和偏好自定義這些設定。最後一行 -Port 587,新增埠號。

執行此程式將開啟一個彈出視窗以獲取必要的安全證書,例如使用者名稱和密碼。下面我們討論瞭如何在命令提示符中執行 PowerShell 指令碼。

你可以按照該方法在命令提示符中執行 PowerShell 指令碼。

在命令提示符環境中執行 PowerShell 指令碼

在命令提示符中執行 PowerShell 指令碼非常容易。首先,你需要以管理員身份執行命令提示符。

輸入 PowerShell 並點選 Enter。現在,PowerShell 環境已在你的命令提示符中啟用。

接下來,複製你最近根據上面的示例建立的程式碼,然後點選 Enter。在繼續之前,你可能需要提供必要的安全選項,例如使用者名稱和密碼。

根據你的 SMTP 伺服器要求,你可能需要在執行程式之前更改其中的一些。