Я пытаюсь изменить цвет вывода на основе записи-записи на основе свойства lastrunoutcome заданий SQL Server в Powershell .... как в ... если работа была успешной, вывод lastrunoutcome - «Успех» в зеленом цвете .... если не удалось, то «Сбой» красным цветом. У меня скрипт работает, чтобы получить желаемый статус работы ... Я просто не знаю, как изменить цвета.Изменить цвет вывода записи-хозяина на основе foreach if elseif result в Powershell
Вот что я до сих пор:
# Check for failed SQL jobs on multiple servers
[reflection.assembly]::LoadWithPartialName("Microsoft.SqlServer.Smo") | out-null
foreach ($svr in get-content "C:\serverlist2.txt")
{
$a = get-date
$BegDate = (Get-Date $a.AddDays(-1) -f d) + " 12:00:00 AM"
$BegDateTrans = [system.datetime]$BegDate
write-host $svr
$srv=New-Object "Microsoft.SqlServer.Management.Smo.Server" "$svr"
$srv.jobserver.jobs | where-object {$_.lastrundate -ge $BegDateTrans -and $_.Name -notlike "????????-????-????-????-????????????"} | format-table name,lastrunoutcome,lastrundate -autosize
foreach ($_.lastrunoutcome in $srv.jobserver.jobs)
{
if ($_.lastrunoutcome = 0)
{
-forgroundcolor red
}
else
{}
}
}
Это, кажется, ближе всего я получил ... но это дает мне ошибку «» LastRunOutcome «является ReadOnly свойство».
Любая помощь была бы принята с благодарностью!
Спасибо!
Эмо
Если изменить код от «=» на «-EQ» Я просто получаю ошибку «Термин„-forgroundcolor“не распознается как имя командлета, функции, файла сценария , или действующая программа ". – Emo
Я знаю, что -eq является сравнительным аргументом, который здесь не работает – Emo
Ну ... черт возьми ... Я не знаю..Игнорировать мои последние два комментария LOL! – Emo