在PowerShell中同时ping一组ip地址

时间:2014-07-24 10:00:31

标签: powershell powershell-v3.0

我有一个对象数组,其属性为“IP”,用于存储IP地址,“LastAlive”用于存储服务器上次响应ping的日期。

为了填充LastAlive属性,我使用以下函数:

function Update-AliveStatus ($nodes)
{
    foreach ($node in $nodes)
    {
        $alive = Test-Connection $node.IP -Quiet -Count 2
        if ($alive -eq $true)
        {
            $node.LastAlive = (Get-Date)
        }
    }
    return $nodes
}

除非IP列表很长,否则这样可以正常工作,在这种情况下,迭代所有IP都需要很长时间。如何修改函数以异步方式运行ping,并在完成所有ping操作后仍返回填充的数组?

0 个答案:

没有答案