PowerShell:
Arbeiten mit CSV
Wie geht das:
Eine CSV-Datei lesen
Um aus einer CSV-Datei zu lesen, verwenden Sie das Cmdlet Import-Csv
. Dieses Cmdlet liest die Datei und konvertiert sie in benutzerdefinierte PowerShell-Objekte für jede Zeile.
# Importieren einer CSV-Datei
$data = Import-Csv -Path "C:\Data\users.csv"
# Anzeigen des Inhalts
$data
Beispielausgabe:
Name Alter Stadt
---- ----- -----
John 23 New York
Doe 29 Los Angeles
In eine CSV-Datei schreiben
Umgekehrt wird zum Schreiben von Daten in eine CSV-Datei das Cmdlet Export-Csv
verwendet. Dieses Cmdlet nimmt Eingabeobjekte und konvertiert sie in ein CSV-Format.
# Erstellen eines Objekts zum Exportieren
$users = @(
[PSCustomObject]@{Name='John'; Alter='23'; Stadt='New York'},
[PSCustomObject]@{Name='Doe'; Alter='29'; Stadt='Los Angeles'}
)
# Exportieren in eine CSV-Datei
$users | Export-Csv -Path "C:\Data\new_users.csv" -NoTypeInformation
Nach der Ausführung wird eine Datei namens new_users.csv
mit den bereitgestellten Daten erstellt.
Filtern und Manipulieren von CSV-Inhalten
Um die Daten aus einer CSV-Datei zu filtern oder zu manipulieren, verwenden Sie die Objektmanipulationsfähigkeiten von PowerShell. Um zum Beispiel nur Benutzer über einem bestimmten Alter und aus einer bestimmten Stadt auszuwählen:
# Importieren und Filtern von Daten
$filteredData = Import-Csv -Path "C:\Data\users.csv" | Where-Object {
$_.Alter -gt 25 -and $_.Stadt -eq 'Los Angeles'
}
# Anzeigen der gefilterten Daten
$filteredData
Beispielausgabe:
Name Alter Stadt
---- ----- -----
Doe 29 Los Angeles
Verwendung von Drittanbieter-Bibliotheken
Obwohl die nativen Cmdlets von PowerShell für übliche Aufgaben normalerweise ausreichen, könnten komplexere Operationen von Drittanbieter-Bibliotheken oder -Tools profitieren. Jedoch bieten für die Standardmanipulation von CSVs, wie das Lesen, Schreiben, Filtern oder Sortieren, die integrierten Cmdlets von PowerShell wie Import-Csv
und Export-Csv
in der Regel eine robuste Funktionalität, ohne dass zusätzliche Bibliotheken benötigt werden.