2016-04-06 9 views
1

Ich bin eigentlich Null für Powershell-Skripts, aber ich muss einen schreiben, durch eine .txt-Datei mit IP-Adressen in einem pro Zeile schreiben und nslookup für jeden ausführen Adresse, um ihren Hostnamen zu erhalten und in eine Datei zu schreiben (oder eine Fehlermeldung erhalten, wenn kein DNS-Eintrag für die verwendete IP vorhanden ist).Ermitteln von Hostnamen für IP-Adressen mit nslookup in Powershell

Ich fand das dieses Thema fast die gleiche Aufgabe: Getting IP addresses for hostnames using nslookup in Powershell

so brauche ich eine ähnliche Lösung, aber IP-Adressen als Eingabe von Hostnamen zu erhalten (oder Fehlermeldung) in der Ausgabe.

Kann mir jemand helfen?

Vielen Dank.

Antwort

0

Verwenden Sie die GetHosetByAddress Methode und Zugriff auf die HostName Eigenschaft den Host-Namen abzurufen:

$ipAddresses = get-content "path_to_the_file" 

foreach ($ipAddress in $ipAddresses) { 
    [System.Net.Dns]::GetHostByAddress($ipAddress).HostName 
} 
1

Die GetHostBy* Methoden System.Net.DNS sind veraltet und veraltet markiert.

Verwendung GetHostEntry:

foreach ($ipAddress in $ipAddresses) { 
    [Net.Dns]::GetHostEntry($ipaddress).HostName 
} 
Verwandte Themen