Dutch_OnE 40 Geschrieben 27. Dezember 2012 Melden Geschrieben 27. Dezember 2012 Hallo Leute, über ein Powershell Script erstelle ich eine Text Datei, die wie folgt aussieht: Server MAIL-SERVER Replied to ping Checking Services on: MAIL-SERVER Mailbox Role Detected Checking Mailbox Databases Checking Public Folders Databases Checking Free Disk Space HT Role Detected CAS Role Detected Testing OWA Site Exitcode: 0 Nun habe ich folgendes Script eingebaut, welches diesen Dateiinhalt in eine HTML Datei umwandelt. $SourceFile = "C:\scripts\test.txt" $TargetFile = "C:\scripts\test.htm" $CssFile = "C:\scripts\test.css" $MyFile = Get-Content $SourceFile $MyFileLines = @() Foreach ($Line in $MyFile) { $MyCustomObject = New-Object -TypeName PSObject Add-Member -InputObject $MyCustomObject -Type NoteProperty -Name Log -Value $Line $MyFileLines += $MyCustomObject } $MyFileLines | ConvertTo-Html -property Log -CssUri $CssFile | Out-File $TargetFile Das ganze funktioniert auch wunderbar, allerdings hätte ich gerne eine zweite Spalte dahinter. 1) Kann ich das Ganze im TXT File machen? Nur wie bekomme ich ein Textfile mit Write-Output Mehrspaltig? (CSV?) 2) Kann ich das in der Foreach Schleife machen, also sagen dass z.B. 2 Reihen eingelesen werden und erst dann das Objekt erstellt wird? 3) Kann ich das mit -Fragment die Tabelle händisch bauen? Ich stehe im Moment auf dem Schlauch und bin für alle Tipps dankbar. Gruß Daniel
blub 115 Geschrieben 6. Januar 2013 Melden Geschrieben 6. Januar 2013 Hi, Ein Array ist zweidimensional. Ich benutze für mehrspaltige Tabellen meist DataTables als Struktur. Finde ich sehr flexible und übersichtlich $DataTable = New-Object System.Data.DataTable("Test") $Column1 = New-Object System.Data.DataColumn("Vorname") $Column2 = New-Object System.Data.DataColumn("Nachname") $Column3 = New-Object System.Data.DataColumn("Wohnort") $DataTable.Columns.Add($Column1) $DataTable.Columns.Add($Column2) $DataTable.Columns.Add($Column3) $DataTable.Rows.Add("Dagobert","Duck","Entenhausen") | out-null $DataTable.Rows.Add("Gundel","Gaukelei","Vesuv") | out-null $DataTable | format-Table "Vorname","Nachname","Wohnort" -AutoSize #Bildschirm $DataTable | export-csv -delimiter ";" -path "c:\temp\test.csv" #csv" #Ausgabe am Host Vorname Nachname Wohnort ------- -------- ------- Dagobert Duck Entenhausen Gundel Gaukelei Vesuv Bischen was zu Datatables in PS findest du hier: http://powershellpraxis.de/index.php/datenzugriffe-ueber-ado-net/2disconnectedclasses blub
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden