Отправка одного файла в письме Exchange Powershell

Рейтинг: 0Ответов: 1Опубликовано: 02.08.2023

Скрипт сейчас отправляет все файлы, находящиеся в папке. Нужно сделать так, чтобы был только один файл в письме, и отправка повторялась, пока не отправятся все файлы из папки.


$PSTpaths = "C:\Users\GKozlov\Desktop" $items = Get-ChildItem -Path $PSTpaths ForEach ($item in $items){ $Filename = ($item.Name -split ".txt")[0] $PSTpath = $item.FullName $MailMessage = @{ To = "test@servicetest.local" From = "GKozlov@servicetest.local" Subject = "С файлами" Body = "Тест отправки письма с файлами" Smtpserver = "EXCHTEST101" Port = 25 Encoding = "UTF8" Attachment = $items}} Send-MailMessage @MailMessage


Ответы

▲ 0Принят

Нужно заменить Attachment = $items на Attachment = $item и внести Send-MailMessage @MailMessage внутрь тела цикла.

$PSTpaths = "C:\Users\GKozlov\Desktop" 
$items = Get-ChildItem -Path $PSTpaths
ForEach ($item in $items){ 
    $Filename = ($item.Name -split ".txt")[0] 
    $PSTpath = $item.FullName 
    $MailMessage = @{ 
        To = "test@servicetest.local" 
        From = "GKozlov@servicetest.local" 
        Subject = "С файлами"
        Body = "Тест отправки письма с файлами" 
        Smtpserver = "EXCHTEST101" 
        Port = 25 
        Encoding = "UTF8"
        Attachment = $item
    }
    Send-MailMessage @MailMessage
}