У меня есть скрипт Powershell, который просматривает несколько файлов и записывает информацию о файле в консоль.То, что выводится на экран, это именно то, что мне нужно отправить по электронной почте.
Электронная часть была легкой, но я не могу понять, как захватить то, что отправлено на экран, и отправить его в теле.Вот соответствующий код.В переменной $ emailbody сохраняется только первая итерация.
РЕДАКТИРОВАННЫЙ ПРИМЕР:
$backupLocations = #List of paths#
$emailBody=""
$currentFile = "nothing"
foreach ($loc in $backupLocations) {
$files = get-childitem "$loc\\*" -recurse -include *.bak
foreach ($file in $files) {
if (test-path $file) {
$prop = Get-ItemProperty -Path "$file"
Write-Output $prop | tee-Object -variable $currentFile
$emailBody += $currentFile
}
}
}
# Code to send $emailBody in an email. That is working fine.#
На экране отображается информация о количестве страниц, например:
Directory: \\directory\directory\directory\myfolder
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 5/10/2011 10:00 PM 1986048 file.bak
По общему признанию я не имею RTFM и в основном взломал мой путь через Powershell к этому пункту, поэтому, пожалуйста, простите меня, если ответ очевиден.