我正在尝试编写一个简单的脚本来ping我(家庭)网络中的各种服务器。
因为我想输出一个漂亮的Powershell表,我定义了自己的输出函数。但是,输出当前为空:
@{Address=; IPv4=}
@{Address=; IPv4=}
@{Address=; IPv4=}
问题是为什么,因为服务器存在,如果我只运行测试连接,我会得到输出:
Test-Connection $server -Count 1
Source Destination IPV4Address IPV6Address ...etc
------ ----------- ----------- -----------
DESKTOP... server3 99.99.999.201
问题1:我做错了什么?
While (1)
{
Foreach ($server in "server1","server2","server3")
{
$test = Test-Connection $server -Count 1
Output $test
}
Start-Sleep -Seconds 20
}
Function Output($input)
{
$output = New-Object psobject
$output | Add-Member noteproperty Address $input.Address
$output | Add-Member noteproperty IPv4 $input.IPV4Address
Write-Host $Output
}
问题2:我现在正在定义要手动ping的服务器。有没有办法只扫描网络/提供IP范围并自动ping其中的每个服务器?