Давайте представим ситуацию⁚ у вас есть необходимость отправить электронное письмо с использованием PowerShell, но вы обнаружили, что команда ″Send-MailMessage″ вам не подходит. Вместо этого, вы можете написать сценарий на PowerShell, используя SMTP-сервер Gmail (smtp.gmail.com).
Шаг 1⁚ Настройте учетную запись Gmail
Перед тем как приступить к отправке электронной почты, убедитесь, что у вас есть учетная запись Gmail и включена функция ″разрешить доступ небезопасным приложениям″. Вы можете найти эту настройку, перейдя в ″Настройки учетной записи Google > Безопасность > Раздел ″Небезопасные приложения″ и включив эту опцию.
Шаг 2⁚ Настройте скрипт PowerShell
В данном примере используется отдельный файл с расширением ″.ps1″. Создайте новый файл с необходимым вам именем, например ″SendEmail.ps1″, и откройте его для редактирования.
Вам понадобятся следующие параметры⁚
- $To — адрес получателя электронного письма;
- $From ⎻ адрес отправителя электронного письма (должен быть ваш адрес Gmail);
- $Subject ⎻ тема письма;
- $Body ⎻ текст сообщения;
- $SMTPServer ⎻ адрес сервера SMTP (smtp.gmail.com);
- $SMTPPort ⎻ порт сервера SMTP (обычно 587);
- $SMTPUser ⎻ ваше имя пользователя Gmail (полный адрес электронной почты);
- $SMTPPassword, ваш пароль от учетной записи Gmail.
Ниже приведен пример скрипта, который вы можете использовать⁚
$To ″получатель@домен.com″ $From ″отправитель@gmail.com″ $Subject ″Тестовое письмо″ $Body ″Это тестовое письмо, отправленное с помощью PowerShell.″ $SMTPServer ″smtp.gmail.com″ $SMTPPort ″587″ $SMTPUser ″отправитель@gmail.com″ $SMTPPassword ″ВашПароль″ $Message New-Object System.Net.Mail.MailMessage($From, $To, $Subject, $Body) $SMTPClient New-Object Net.Mail.SmtpClient($SmtpServer, $SmtpPort) $SMTPClient.EnableSsl $true $SMTPClient.Credentials New-Object System.Net.NetworkCredential($SMTPUser, $SMTPPassword) $SMTPClient.Send($Message)
Шаг 3⁚ Запуск скрипта
Сохраните файл скрипта и запустите его с помощью PowerShell. Убедитесь, что вводите полный путь к скрипту, если он не находится в текущей директории.
После запуска скрипта, вы должны увидеть вывод в консоли, подтверждающий успешную отправку письма через SMTP-сервер Gmail.
Таким образом, вы успешно настроили и запустили скрипт PowerShell для отправки электронного письма через SMTP с помощью сервера Gmail. Обратите внимание, что для этого требуется соответствующая настройка вашей учетной записи Gmail.