131181
Goto Top

CSV Dateien Vergeleichen

Hallo Leute,

ich habe folgendes Problem und leider komme ich nicht weiter.
Ich benutze Powershell 2.0

Mein Ziel ist es das er mir nur die Host anzeigt die mit der Host.csv nicht übereinstimmen da sind ca. 200 Host enthalten.
In der Test2 sind ca. 1300 Host und wenn ich mein aktuelles Script benutze zeigt er mir leider auch die im Test2 an.

Ich hoffe ihr versteht mein Problem leider weiß ich gerade nicht wie ich es besser beschreiben soll.

#einlesen erste Datei
$host_csv = Import-CSV 'D:\Host.csv' -delimiter ";"   

#einlesen zweite Datei
$ipm_csv = Import-CSV 'D:\Test2.csv' -delimiter ";"  | Select-Object -Property *,@{Name='IP-Adresse';Expression={$_.IP}},@{Name='Host';Expression={$_.'Asset: Name'}}  

#ergebnis Datei
$csv_out2 = 'D:\IP-Host-Check.csv'  

# Vergleichen mit den Eigenschaften 'IP-Adresse','Asset:Name' und nur die Objekte ausgeben die nur in der ersten CSV vorkommen 
Compare $host_csv $test2_csv -Property 'IP-Adresse , Host' -PassThru | ?{$_.SideIndicator -eq '=>'} | select IP-Adresse,Host,Datacenter,Cluster | sort ip-adresse |  
        Export-Csv -Path $csv_out2 -Delimiter ';' -NoTypeInformation -Encoding UTF8  


danke für die Hilfe und eure Tipps

Content-Key: 324281

Url: https://administrator.de/contentid/324281

Printed on: April 26, 2024 at 11:04 o'clock

Mitglied: 131381
131381 Dec 19, 2016 updated at 12:48:32 (UTC)
Goto Top
Hier ist der Fehler
-Property 'IP-Adresse , Host'
sollte eher so lauten:
-Property 'IP-Adresse','Host'
Und denke daran welches Objekt du als Reference-Object und ls DifferenceObject angibst das ist hier essentiell.

Gruß mik