Windows-Server-2003
使用 windows 2003 R2 從命令行發送電子郵件的最簡單方法
我有一個 Windows 2003 R2 伺服器,我想從命令行發送一封電子郵件。此伺服器未配置 SMTP 服務。是否有一個班輪可以讓我發送電子郵件?我目前的具體案例是在觸發性能警報時發送電子郵件,但一般來說它會很有用。
我希望有類似的東西
foomail -t peter@example.org -f blah@example.org -m "Alert! the sky is falling"
更新: 我更喜歡不涉及安裝 3rd 方軟體的解決方案。
我會嘗試blat。您可以編寫一個 vbscript,但沒有內置的執行檔來發送郵件
你會考慮 powershell 而不是 cmd.exe 嗎?如果是這樣,發送郵件是內置的:
$SmtpClient = New-Object System.Net.Mail.SmtpClient $SmtpServer = "your.mail.host.com" $SmtpClient.host = $SmtpServer $From = "Me <User@example.com>" $To = User2@example.com $Title = "Subject" $Body = "Body Text" $SmtpClient.Send($From,$To,$Title,$Body)
要製作單行,請將以下內容保存到 powershell 腳本文件 (sendmail.ps1):
param( [string] $From = "from@example.com", [string] $To = "to@example.com", [string] $Title = "title", [string] $Body = "body" ) $SmtpClient = New-Object System.Net.Mail.SmtpClient $SmtpServer = "your.mail.host.com" $SmtpClient.host = $SmtpServer $SmtpClient.Send($From,$To,$Title,$Body)
(確保將 smtpserver 更改為您的真實伺服器)
然後您可以使用以下方法呼叫它:
powershell.exe c:\path\to\sendmail.ps1 "from@example.com" "to@example.com" "title" "body"