Skip to main content

CSV mit Powershell einlesen

Einleitung

Du kannst mit der Powershell CSV-Dateien einlesen. Dies kannst du verwendenverwenden, um Listen von Daten einzulesen und diese z.B. als Parameter für Funktionen zu verwenden. So können automatisierte oder vereinfachte Prozesse gestaltet werden. 

Code

Zuerst müssen wir eine CSV Datei erstellen. Im Beispiel erstellen wir eine Liste aus RechnernRechnern, die späspäter eingelesen und angepingt werden sollen. ÃœÜber die ÃœÜberschriften können die Daten dann späspäter angesprochen werden.

powershellCSV1.JPGpowershellCSV1.JPG

Im nächsten Schritt erstellen wir in Powershell ein Array in der die CSV Daten gespeichert werden. Dort wird dann üüber die Powershell-Funktion Import-CSV die Datei eingelesen. Dort geben wir als Parameter den Pfad und das Trennzeichen mit. Die Daten werden dann als mehrdimensionales Array in das Array üübergeben. In der folgenden Schleife wird dann das Array durchgearbeitet. ÃœÜber die ÃœÜberschriften können dann die Daten angesprochen werden.

# Import der CSV Daten in das Array
$Daten = @()
$Daten = Import-Csv -Path "C:\Temp\computer.csv" -Delimiter ";"

# Schleife die Daten der CSV nacheinander durcharbeitet
foreach($d In $Daten)
{
	# Code der ausgeführt wird
    if(Test-Connection -ComputerName $d.'IPv4-Adresse')
    {
        Write-Host("Der Computer mit dem Namen " + $d.'PC-Name' + " ist erreichbar!") -ForegroundColor Green
    } else {
        Write-Host("Der Computer mit dem Namen " + $d.'PC-Name' + " ist nicht erreichbar!") -ForegroundColor Red
    }
}