windows power shell 脚本试下发送带附件的邮件
时间: 2024-09-09 20:06:33 浏览: 45
Windows PowerShell 中可以使用 `Send-MailMessage` cmdlet 来发送带附件的电子邮件。以下是基本步骤:
```powershell
# 设置发件人、收件人、主题以及密码(如果你的邮箱支持简单身份验证)
$smtpServer = "smtp.example.com" # 确保替换为实际SMTP服务器地址
$fromAddress = "sender@example.com"
$toAddress = "receiver@example.com"
$subject = "带有附件的邮件示例"
$securePassword = ConvertTo-SecureString "your-password" -AsPlainText -Force
# 创建附件路径列表(如果有多个文件)
$attachmentPaths = @("path\to\file1.txt", "path\to\file2.docx")
# 发送邮件
$smtpParams = @{
SmtpServer = $smtpServer
Port = 587
UseSsl = $true
Credential = New-Object System.Management.Automation.PSCredential($fromAddress, $securePassword)
From = $fromAddress
To = $toAddress
Subject = $subject
}
# 添加附件
$attachments = foreach ($path in $attachmentPaths) {
[System.Net.Mail.Attachment]::new($path)
}
$smtpParams.Add("Attachments", $attachments)
# 发送邮件
Send-MailMessage @smtpParams
```
请注意,这个脚本需要PowerShell v4及以上版本,并且需要访问到一个外部SMTP服务器。如果您的邮箱提供商有特殊要求或防火墙设置,可能还需要额外配置。
阅读全文