Powershell - Obtenir le nom du serveur et l'IP du texte de la liste

Je suis en utilisant la suggestion suivante fournies dans ce lien:
Des Experts-Échange

Je suis en train de prendre un serveur (nom d'hôte) liste et enregistrez le nom d'hôte et l'adresse IP dans un .fichier csv.

En utilisant le Powershell suivante de code, je vois le nom d'hôte, mais la même adresse IP, pour chaque serveur, dans le volet des résultats.

$servers = get-content "C:\TEMP\servers.txt"
$serversAndIps = "C:\TEMP\List_of_servers_with_ips.csv"


$results =@()
foreach ($server in $servers) {
  $results =@()
    $result = "" | Select ServerName , ipaddress
    $result.ipaddress = [System.Net.Dns]::GetHostAddresses($server)
  foreach($a in $addresses) {
    "{0},{1}" -f $server, $a.IPAddressToString
  }
    $result.servername = $server
    $results += $result
}
$results | export-csv -NoTypeInformation $serversandips

Quand j'ouvre le .fichier csv, j'obtiens ceci:

"ServerName","ipaddress"
"Server_name_1","System.Net.IPAddress[]"

Si j'exécute ce script PowerShell, je peux obtenir le nom d'hôte et l'adresse IP correcte dans le volet des résultats. J'ai juste besoin de savoir comment transférer les résultats à un .fichier csv.

$servers = get-content "C:\TEMP\servers.txt"
foreach ($server in $servers) {
  $addresses = [System.Net.Dns]::GetHostAddresses($server)
  foreach($a in $addresses) {
    "{0},{1}" -f $server, $a.IPAddressToString
  }
}

Des suggestions?

Essayez de prendre que $results =@() de l'intérieur de la boucle.
Je l'ai fait et maintenant j'ai tous les noms d'hôte, mais j'ai toujours "Server_Name_1","le Système de.Net.IPAddress[]"
Vous êtes le stockage de la [System.Net.Dns]::GetHostAddresses($server) objet dans un tableau. Si vous faites un Get-member, vous verrez que votre tableau est le stockage d'un objet de type System.Net.IPAddress. Vous aurez probablement besoin de faire quelque chose comme ceci à la place: $result.ipaddress = ([Système.Net.Dns]::GetHostAddresses($serveur)).IPAddressToString

OriginalL'auteur Jeremy F. | 2015-04-24