переменная powershell для тела письма - PullRequest
0 голосов
/ 03 октября 2018

Я пытаюсь получить статус задач по расписанию на электронную почту, но всегда получаю пустое тело на электронную почту.Кто-то может помочь?

Тело сообщения - это $ body, а результаты, которые нужно вставить, - это $ tskfail и $ tskok

enter code here

$Server=$env:COMPUTERNAME


$TskFAIL=Get-ScheduledTask | Where State -ne "Disabled" | Get-ScheduledTaskInfo |Where taskpath -EQ "\" | Where LastTaskResult -GT 1 | Select TaskName,TaskPath,LastRunTime, LastTaskResult,NextRunTime,NumberofMissedRuns
$Tskok=Get-ScheduledTask | Where State -ne "Disabled" | Get-ScheduledTaskInfo |Where taskpath -EQ "\" | Where LastTaskResult -eq 0 | Select TaskName,TaskPath,LastRunTime, LastTaskResult,NextRunTime,NumberofMissedRuns


#Envio de Email

$msg = new-object Net.Mail.MailMessage
$SMTPClient = new-object Net.Mail.SmtpClient($smtpServer, $smtpPort)
$SMTPClient.EnableSsl= $true
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential($usr, $pass);
$msg.From = $usr
foreach ($email in $destEmail){
$msg.To.Add($email)}
$msg.Subject = "Relatório de Tarefas "+$Server
$body="Tarefas que tiveram Falha: "+ "`r" + $tskfail
$body=$body + "`r" + "Tarefas que executaram SEM FALHA: " + "`r" + $Tskok
$date=get-date -format F
$body= $body + $date
$msg.Body = $body
[System.Net.ServicePointManager]::ServerCertificateValidationCallback = { return $true }
$SMTPClient.Send($msg)
Start-Sleep 1

1 Ответ

0 голосов
/ 03 октября 2018

Я нашел решение!

нужно поставить |вне строки в и запроса, так:

$TskFAIL=Get-ScheduledTask | Where State -ne "Disabled" | Get-ScheduledTaskInfo |Where taskpath -EQ "\" | Where LastTaskResult -GT 1 | Select TaskName,TaskPath,LastRunTime, LastTaskResult,NextRunTime,NumberofMissedRuns |Out-String
$Tskok=Get-ScheduledTask | Where State -ne "Disabled" | Get-ScheduledTaskInfo |Where taskpath -EQ "\" | Where LastTaskResult -eq 0 | Select TaskName,TaskPath,LastRunTime, LastTaskResult,NextRunTime,NumberofMissedRuns |Out-String
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...