ping vs Test-Connection

La cmdlet Test-Connection a la seconde comme unité de timeout, contrairement à la commande Windows ping.exe dont le timeout s’exprime en millisecondes. Pour tester les adresses ip dans votre sous-réseau, il vaut donc mieux recourir à l’emploi de la commande externe Windows plutôt qu’à la cmdlet.

Le script PowerShell

Je vous ai mis les deux écritures, sachant que l’utilisation de la cmdlet Test-Connection est commenté dans le script ci-dessous :

Clear-Host
For($i=1;$i -lt 255; $i++)
{
    $ip="192.168.1.$i"
    <#$ping=Test-Connection $ip -Count 1 -Delay 1 -Quiet
    
    If($ping)
    {
        $ip
    }
    #>
    $ping=ping $ip -n 1 -w 10 -4
    if($ping -match 'millisecondes')
    {
        $ip   
    }
}

ping vs Test-Connection

PowerShell  / Formateur Powershell