#powershell
#powershell
Вопрос:
Я пытаюсь проверить, подключен ли компьютер из файла computers.txt есть они в сети или нет. Я использую нижеприведенную рекомендацию, но я хотел бы видеть имя компьютера рядом с истинным или ложным разрешением этого. Возможно ли это добавить?
Test-Connection -BufferSize 32 -Count 1 -ComputerName (Get-Content C:Tempcomputers.txt) -Quiet |
Out-GridView
Ответ №1:
Для этого вам нужно использовать цикл ForEach и вывести PSObject с нужными свойствами:
Get-Content C:Tempcomputers.txt | ForEach-Object {
[PsCustomObject]@{
Computer = $_
IsOnline = Test-Connection -BufferSize 32 -Count 1 -ComputerName $_ -Quiet
}
} | Out-GridView
Ответ №2:
Альтернатива ответу Тео, используя синтаксис выбора объекта:
Get-Content C:Tempcomputers.txt |
select @{n="Computer";e={$_}}, @{n="IsOnline";e={Test-Connection -BufferSize 32 -Count 1 -ComputerName $_ -Quiet}} |
Out-GridView
Плюсы: быстрее и работает даже со старыми версиями PowerShell, которые не поддерживают [pscustomobject]
Минусы: неуклюжий синтаксис