earthhero
Goto Top

Powershell Daten sortiert in CSV XLS exportieren

Schönen guten Tag zusammen,

ich habe mir aus dem Internet ein entsprechendes Skript zur Auswertung von WSUS Update zusammengebastelt, welches aus soweit funktioniert.

Ich bekomme folgende Daten über die Powershell ausgegeben:

c4c8db433ffb9c50e0c72f282c6a4f1b


Dieses ist nun ein Beispiel für zwei Server, je nach WSUS Gruppe erscheinen mehr oder weniger Server...

Ich möchte dieses nun gerne in einer CSV/XLS Datei exportieren.

mit dem | export-csv... wird in der CSV-Datei in einem Feld alles ausgegeben:

Server,"Installed","Not Installed","Critical","Security","Failed","Not Applicable","Pending Reboot","Last Reported Status Time","Last Sync Time","Last Sync Result","Operating System"

Um die Übersicht zu bewahren soll jeder Parameter mit den entsprechenden Daten dazu in einem Feld stehen:

77813cc18e46a3efaa8a68de086a7822

Wie kann ich das anstellen? Die Daten, welche in der Shell ausgegeben, werden wie folgt ausgelesen:


                $compObj | Add-Member -MemberType NoteProperty -Name Installed -Value $compSummary.InstalledCount 
                $compObj | Add-Member -MemberType NoteProperty -Name "Not Installed" -Value $notinstalled  
                $compObj | Add-Member -MemberType NoteProperty -Name Critical -Value $cu
                $compObj | Add-Member -MemberType NoteProperty -Name Security -Value $su
                $compObj | Add-Member -MemberType NoteProperty -Name Failed -Value $compSummary.failedCount
                $compObj | Add-Member -MemberType NoteProperty -Name "Not Applicable" -Value $compSummary.NotApplicableCount  
                $compObj | Add-Member -MemberType NoteProperty -Name "Pending Reboot" -Value $compSummary.InstalledPendingRebootCount  
                $compObj | Add-Member -MemberType NoteProperty -Name "Last Reported Status Time" -Value $UpdateGroupMember.LastReportedStatusTime  
                $compObj | Add-Member -MemberType NoteProperty -Name "Last Sync Time" -Value $UpdateGroupMember.LastSyncTime  
                $compObj | Add-Member -MemberType NoteProperty -Name "Last Sync Result" -Value $UpdateGroupMember.LastSyncResult  
                $compObj | Add-Member -MemberType NoteProperty -Name "Operating System" -Value $UpdateGroupMember.OSDescription  
                $compArray += $compObj 

Kann mir wer weiterhelfen?

Viele Grüße

Content-Key: 265901

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

Ausgedruckt am: 29.03.2024 um 08:03 Uhr

Mitglied: colinardo
Lösung colinardo 11.03.2015 aktualisiert um 13:35:19 Uhr
Goto Top
Hallo earthhero, Willkommen auf Administrator.de!
Das ist schnell gelöst, ein deutsches Excel benutzt standardmäßig Semikolons für eine Spaltenerkennung, deshalb gebe dem Export-CSV das Semikolon als Trennzeichen mit. Dann erkennt Excel die Spalten sofort beim Öffnen der CSV-Datei.
$compObj | export-csv "C:\test.csv" -delimiter ";" -NoType -Encoding UTF8  
Grüße Uwe
Mitglied: earthhero
earthhero 11.03.2015 um 13:35:39 Uhr
Goto Top
Vielen Dank face-smile

Dass es so einfach geht hätte ich nun nicht gedacht face-smile