Я пытаюсь создать цикл, который проверяет соединение с определенными компьютерами в Active Directory.Вывод @ {name = KY-WH-DT01}, когда я ищу KY-WH-DT01.Я не уверен, что делаю не так.
В качестве обходного пути я вытащил список вручную и правильно вставил его в переменную в виде жесткого кода.
function testConnection {
$computers = Get-ADComputer -filter 'Name -like "KY-WH*" -or name -like "KY-SR"' | select name
$pass = 0
$fail = 0
foreach ($computer in $computers) {
$testConnection = Test-Path "\\$computer\C$" -ErrorAction Stop
if ($testConnection -eq $true) {
Write-Host $computer -ForegroundColor Green
$pass = $pass + 1
}
else {
Write-Host $computer -ForegroundColor Red -BackgroundColor Black
$fail = $fail + 1
}
}
Write-Host $null
Write-Host "Passed: $pass | Failed: $fail"
}
testConnection
...
Этот код должен выводить список имен компьютеров с цветами, определяющими, прошел ли тест соединения или нет, поворачивая их красным или зеленым.