功能:批量测试远程主机的Ping值,以及根据TTL值来判断是否为Windows主机。

使用:在C:\IP.txt中加入需要测试的主机IP或域名,一行一个。例如:
www.google.com
www.baidu.com
www.cha123.com
www.yahoo.com
www.msn.com
源码
function Ping_Test {
    PROCESS {
      $ping = $false
      $results = Get-WmiObject -query `
      "SELECT * FROM Win32_PingStatus WHERE Address = '$_'"
      $RT = $results.ResponseTime
      $TTL = $results.ResponseTimeToLive
      foreach ($result in $results) {
        if ($results.StatusCode -eq 0) {
            if ($TTL -ge 98 -and $TTL -le 128)
                {Write-Host "`n$_ Response Time=$RT ms, TTL=$TTL,It is a Windows host." -ForegroundColor Green }
              else
                  {Write-Host "`n$_ Response Time=$RT ms, TTL=$TTL, It is NOT a Windows host." -ForegroundColor Blue}
          }
        else {
          Write-Host "`n$_ Ping failed!" -ForegroundColor Red
        }
        }
    }
  }
cls
Get-Content c:\IP.txt | Ping_Test
结果:
p_w_picpath