首页 > 解决方案 > 更改 powershell 脚本,以便它检查 ping

问题描述

有人可以修改下面的脚本,以便 IP 更改不会在 IP 以某个值开始时停止,而是在 ping 到某个主机(比如 ya.ru)时停止,例如,80 毫秒?

 [string]$ip = (Invoke-WebRequest -uri "http://ifconfig.me/ip").Content
while(!$ip.StartsWith('95.56')){
    ipconfig /release
    ipconfig /renew
    $ip = (Invoke-WebRequest -uri "http://ifconfig.me/ip").Content
}

非常感谢你!

标签: powershell

解决方案


我认为您的脚本有问题,我非常怀疑 DHCP 服务器的管理员会批准。我还希望您start-sleep在尝试使用它之前需要获得 IP 地址,但我不会运行它来找出答案。

但是,您可以像这样从 PowerShell 获取 IP:

$ping = new-object System.Net.Networkinformation.Ping
$result = ping.send("8.8.8.8")
Write-Host $result.RoundtripTime

推荐阅读