2016-03-21 11 views
0

Ich habe ein PS-Skript geschrieben, das mir alle IP-Adressen und Präfixlänge von Servern aus einer Textdatei gibt. Siehe Code:Powershell-Liste mit IPAddress, Prefixlength und Computername

$cred = Get-Credential 
$computers = Get-Content -Path C:\Users\XX_YY\Desktop\test_hostname_file.txt 
invoke-command -computername $computers -Credential $cred -scriptblock {get-netipaddress -AddressFamily IPv4 } | where {$_.ipaddress -like "10.*"} | ft -AutoSize IPaddress, prefixlength 

Dieses Skript gibt mir das Ergebnis als Tabelle. Aber ich brauche auch die Computernamen in der Tabelle.

haben Sie eine Idee, wie ich damit umgehen kann?

Prost Sam

Antwort

0

Nun, würde ich es auf eine andere Art und Weise tun, aber auf Ihre Frage zu haften:

Sie können die automatische Variable $ENV:ComputerName verwenden Sie den Computernamen zu erhalten und es an den Ausgang hinzufügen verwenden ein PS-Objekt

$cred = Get-Credential 
$computers = Get-Content -Path C:\Users\XX_YY\Desktop\test_hostname_file.txt 

invoke-command -computername $computers -Credential $cred -scriptblock { 
$IP = get-netipaddress -AddressFamily IPv4 | where {$_.ipaddress -like "10.*"} 
$Row = "" | Select Computer,IPaddress,prefixlength 
$Row.Computer = $env:COMPUTERNAME 
$Row.IPaddress = $IP.IPaddress 
$Row.prefixlength = $IP.prefixlength 
return $row 
} 
+0

Vielen Dank! genau – logfile

Verwandte Themen