Textdatei importieren und formatieren und in PowerShell in CSV exportieren

John Wachira 15 Februar 2024
Textdatei importieren und formatieren und in PowerShell in CSV exportieren

Dieser Artikel beschreibt, wie wir eine Textdatei importieren und formatieren und mit PowerShell in eine CSV-Datei exportieren können.

PowerShell-Befehle wie Get-Content, ConvertFrom-StringData und Export-Csv sind praktisch, wenn Sie Dateien importieren und als CSV-Dateien exportieren möchten. Wenn Sie sich nicht sicher sind, wie das geht, bleiben Sie in der Nähe, wir haben eine Menge zu entpacken.

Textdatei importieren und formatieren und in PowerShell in CSV exportieren

Für einen einfacheren Kontext verwenden wir ein Beispiel.

Nehmen wir an, das folgende Bild stellt den Inhalt der Textdatei dar, die wir importieren, formatieren und in eine CSV-Datei exportieren möchten. Wie würden wir vorgehen?

Textdatei

Der erste Schritt besteht darin, die Daten in ein benutzerdefiniertes Objekt zu parsen, um die Verarbeitung zu vereinfachen. Unten ist das Skript, das wir verwenden werden:

$usrObj = [pscustomobject] ((Get-Content -Raw C:\Users\pc\Demo\Users.txt) -replace ':', '=' |
  ConvertFrom-StringData)

Wir verwenden -replace ':', '=', um das : in = zu ändern, da ConvertFrom-StringData nur = als Trennzeichen zwischen einem Schlüssel und seinem entsprechenden Wert akzeptiert.

Zusätzlich verwenden wir [pscustomobject], um die von ConvertFrom-StringData generierte Hashtabelle in ein benutzerdefiniertes Objekt zu konvertieren.

Wir können dies mit dem folgenden Skript in unserer gewünschten Reihenfolge weiter in eine Tabelle formatieren:

$usrObj | Format-Table 'Username', 'Title', 'Department', 'Manager', 'Similar User'

Dies ergibt die folgende Ausgabe:

Tabelle formatieren

Wir können die Informationen dann in einer CSV-Datei namens Users.csv speichern. Unten ist das Skript, das wir verwenden werden:

$usrObj | Export-Csv -NoTypeInformation -Encoding Utf8 Users.csv

Unsere CSV-Datei sollte so aussehen:

Anfängliche CSV-Datei

Abschließend können Sie eine Textdatei als CSV-Datei in PowerShell importieren und exportieren. Befehle wie Get-Content, ConvertFrom-StringData und Export-Csv erweisen sich in solchen Szenarien als nützlich.

John Wachira avatar John Wachira avatar

John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.

LinkedIn

Verwandter Artikel - PowerShell CSV