Powershell Quick-Tip: CSV mit anderen Trennzeichen
Der Befehl Import-CSV ist ein sehr nützliches Tool innerhalb von Powershell-Skripten. Problematisch wird es immer dann, wenn als Trennzeichen nicht , : oder ; verwendet.
Das Szenario
Wir haben eine CSV-Datei falscheCSV.csv die als Trennzeichen für die einzelnen Felder das Zeichen ## verwendet. Wir wollen innerhalb des Skripts auf die einzelnen Werte der CSV-Einträge zugreifen.
Der Split
Unser Weg zum Ziel ist hier ganz einfach. Über den Befehl:
$ImportLine = Get-Content C:\falscheCSV.csv
wird eine komplette Zeile aus der Datei falscheCSV.csv in die Variable $ImportLine importiert. Nun muss man diese nur noch über folgenden Befehl in ein Array aufsplitten:
$ImportLineArray = $ImportLine.Split("##")
Das Ziel
Nun kann man ganz einfach über den Array-Operator [] auf die einzelnen Werte zugreifen. $ImportLineArray[0] liefert hier zum Beispiel den 1. Eintrag der Zeile.
- ASP.NET 1
- Active Directory 41
- Administration Tools 1
- Allgemein 60
- Backup 4
- ChatBots 5
- Configuration Manager 3
- DNS 1
- Data Protection Manager 1
- Deployment 24
- Endpoint Protection 1
- Exchange Server 62
- Gruppenrichtlinien 4
- Hyper-V 18
- Intune 1
- Konferenz 1
- Künstliche Intelligenz 7
- Linux 3
- Microsoft Office 11
- Microsoft Teams 1
- Office 365 11
- Office Web App Server 1
- Powershell 21
- Remote Desktop Server 1
- Remote Server 1
- SQL Server 8
- Sharepoint Server 12
- Sicherheit 1
- System Center 10
- Training 1
- Verschlüsselung 2
- Virtual Machine Manager 1
- Visual Studio 1
- WSUS 7
- Windows 10 12
- Windows 8 9
- Windows Azure 4
- Windows Client 1
- Windows Server 24
- Windows Server 2012 7
- Windows Server 2012R2 15
- Windows Server 2016 7
- Windows Server 2019 2
- Windows Server 2022 1
- Zertifikate 4