Ja, eigentlich heißt der Blog "sqlwithpleasure", aber manchmal muss man auch über den Tellerrand blicken. Deshalb - und weil ich in letzter Zeit mehr mit Control-M etc verbringe - heute wieder ein kleiner Post bzgl PowerShell.
Wir hatten ein recht simples Problem, dass wir tourlich verschiedene CSV-Files angeliefert bekommen, die jedoch dann auf eines zusammengeführt werden sollen. Natürlich wieder mal eine kleine Powershell-Lösung. Vielleicht benötigt ja jemand mal was ähnliches.
Syntax:
<# .VERSION Produced By : Stefan Perner URL : www.sqlwithpleasure.blogspot.co.at Author : Stefan Perner Date : 2015-09-23 Purpose : CSV mergen Modifications : no changes, as perfect .DESCRIPTION Das Skript kopiert 1-n CSV-Dateien zusammen, nimmt den Header-Satz jedoch nur einmal mit .EXAMPLE .\CSVMerger Inpfile1,Inpile2,Inpfile3 Outputfile #> param( [string[]]$CSVFiles, [string]$OutputFile = "c:\merged.csv" ) $Output = @(); foreach($CSV in $CSVFiles) { if(Test-Path $CSV) { $temp = Import-CSV -Path $CSV $Output += $temp } else { Write-Warning "$CSV : No such file found" } } $Output | Export-Csv -Path $OutputFile -NoTypeInformation Write-Output "$OutputFile successfully created"