The Magician

This is an old revision of the document!


Отправка почты из PowerShell

Локальная отправка

Мы можем отправлять почту из PowerShell с одного из Exchange следующим образом. Пример отправки сообщения через конкретный сервер без вложения:

Send-MailMessage -To recipient@arasaka.local -from sender@arasaka.local -Subject 'Mail Subject' -SmtpServer 10.88.88.22 -Body 'Email body' -Encoding UTF8

А вот пример с вложением в виде текстового файла:

Send-MailMessage -To recipient@arasaka.local -from sender@arasaka.local -Subject 'Mail Subject' -SmtpServer 10.88.88.22 -Body 'Email body' -Attachments 'C:\somefile.txt' -Encoding UTF8

Отправка почты с авторизацией по SMTP

Данный PowerShell код отправит почту по SMTP с авторизацией пользователя Exchange.

$cred = New-Object System.Management.Automation.PSCredential (
    "testuser@domain.ru",
    (ConvertTo-SecureString "SomePassw0rd" -AsPlainText -Force)
)

Send-MailMessage `
    -SmtpServer "server.domain.ru" `
    -Port 25 `
    -Credential $cred `
    -From "testuser@domain.ru" `
    -To "testuser2@domain.ru" `
    -Subject "Test message" `
    -Body "Test SMTP message from PowerShell"
отправка_почты_из_powershell.1788877404.txt.gz · Last modified: by jp