Код говорит сам за себя в отношении того, что я пытаюсь сделать.Как заставить оператор if работать в логическом режиме на основе результатов такого командлета, как get-hotfix?По сути, я хочу, чтобы значение True было ЛЮБОМ результатом, а значение false - нулевым возвращением.
Я верю, что PowerShell уже делает это в том смысле, что любой результат всегда считается логическим значением true, и никакой результат не возвращается как ноль.,Мне нужно знать синтаксис на if ($hot -EQ True)
, который не выдаст ошибку.
#get a list of computernames
$inputFile = Read-Host -Prompt "Please enter the directory path of the input file."
#parse the list of computernames into an array.
$info = Get-Content $inputFile
#loop to run the hotfix check against all the computers.
foreach ($Data in $info) {
$hot = Get-HotFix -ComputerName $Data | Where-Object hotfixid -EQ KB4338824
#if patch is found output true to user
if ($hot -EQ True){
Write-Host $Data + "is True"
}
#if patch is not found output false to user
else {
Write-Host $Data + "is False"
}
}