功能:批量测试远程主机的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
结果: