Export-CSV
Konvertiert Microsoft .NET Framework-Objekte in eine Reihe von CSV-Zeichenfolgen (Comma-Separated Value) und speichert die Zeichenfolgen in einer CSV-Datei.
Syntax
Export-CSV [[-Delimiter] <char>] [-Path] <string> -InputObject <psobject> [-Encoding <string>] [-Force] [-NoClobber] [-NoTypeInformation] [-Confirm] [-WhatIf] [<CommonParameters>]
Export-CSV [-UseCulture] [-Path] <string> -InputObject <psobject> [-Encoding <string>] [-Force] [-NoClobber] [-NoTypeInformation] [-Confirm] [-WhatIf] [<CommonParameters>]
Beschreibung
Mit dem Cmdlet "Export-CSV" wird eine CSV-Datei erstellt, die die von Ihnen gesendeten Objekte darstellt.
Anschließend können Sie das Cmdlet "Import-CSV" verwenden, um aus den CSV-Zeichenfolgen in den Dateien Objekte neu zu erstellen. Die resultierenden Objekte sind CSV-Versionen der ursprünglichen Objekte, die aus Zeichenfolgendarstellungen der Eigenschaftenwerte bestehen, und keine Methoden.
Sie können auch mit den Cmdlets "ConvertTo-CSV" und "ConvertFrom-CSV" .NET Framework-Objekte in CSV-Zeichenfolgen (bzw. CSV-Zeichenfolgen in .NET Framework-Objekte) konvertieren. Export-CSV entspricht ConvertTo-CSV, jedoch werden mit "Export-CSV" die CSV-Zeichenfolgen in einer Datei gespeichert.
Sie können die Parameter des Cmdlet "Export-CSV" verwenden, um ein anderes Trennzeichen als ein Komma anzugeben oder um festzulegen, dass Export-CSV das Standardtrennzeichen für die aktuelle Kultur verwendet.
Wenn Sie mehrere Objekte an Export-CSV senden, strukturiert Export-CSV die Datei auf Grundlage der Eigenschaften des ersten Objekts, das Sie senden. Wenn die restlichen Objekte über keine der angegebenen Eigenschaften verfügen, ist der Eigenschaftenwert dieses Objekts NULL. Dies wird durch zwei aufeinander folgende Kommas dargestellt. Wenn die restlichen Objekte über zusätzliche Eigenschaften verfügen, sind diese Eigenschaftenwerte nicht in der Datei enthalten.
Weitere Informationen finden Sie unter "Export-CSV" und im Abschnitt "Hinweise".
Parameter
-Delimiter <char>
Gibt ein Trennzeichen für die Eigenschaftenwerte an. Der Standardwert ist ein Komma (,). Geben Sie ein Zeichen ein, z. B. einen Doppelpunkt (:). Um ein Semikolon (;) anzugeben, schließen Sie es in Anführungszeichen ein.
Erforderlich? |
false |
Position? |
2 |
Standardwert |
, (Komma) |
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Encoding <string>
Gibt die Codierung für die exportierte CSV-Datei an. Gültige Werte sind "Unicode", "UTF7", "UTF8", "ASCII", "UTF32", "BigEndianUnicode", "Default" und "OEM". Der Standardwert ist "ASCII".
Erforderlich? |
false |
Position? |
named |
Standardwert |
ASCII |
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Force
Überschreibt die im Pfad angegebene Datei ohne Aufforderung.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-InputObject <psobject>
Gibt die Objekte an, die als CSV-Zeichenfolgen exportiert werden sollen. Geben Sie eine Variable ein, die die Objekte enthält, oder geben Sie einen Befehl oder einen Ausdruck ein, mit dem die Objekte abgerufen werden. Sie können Objekte auch über die Pipeline an Export-CSV übergeben.
Erforderlich? |
true |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
true (ByValue, ByPropertyName) |
Platzhalterzeichen akzeptieren? |
false |
-NoClobber
Gibt an, dass eine vorhandene Datei nicht überschrieben (d. h. ihr Inhalt ersetzt) wird. Standardmäßig wird mit Export-CSV eine unter dem angegebenen Pfad vorhandene Datei ohne vorherige Warnung überschrieben.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-NoTypeInformation
Lässt die Typinformationen aus der CSV-Datei weg. Standardmäßig enthält die erste Zeile der CSV-Datei "#TYPE ", gefolgt von dem vollqualifizierten Namen für den Typ des .NET Framework-Objekts.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Path <string>
Gibt den Pfad der CSV-Ausgabedatei an. Der Parameter ist erforderlich.
Erforderlich? |
true |
Position? |
1 |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-UseCulture
Verwendet das Listentrennzeichen für die aktuelle Kultur als Elementtrennzeichen. Der Standardwert ist ein Komma (,).
Dieser Parameter ist in Skripts sehr nützlich, die weltweit an Benutzer verteilt werden. Um das Listentrennzeichen für eine Kultur zu suchen, verwenden Sie den folgenden Befehl: (Get-Culture).TextInfo.ListSeparator.
Erforderlich? |
false |
Position? |
named |
Standardwert |
Komma |
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-Confirm
Fordert Sie vor der Ausführung des Befehls zur Bestätigung auf.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
-WhatIf
Beschreibt die Auswirkungen einer Ausführung des Befehls, ohne den Befehl tatsächlich auszuführen.
Erforderlich? |
false |
Position? |
named |
Standardwert |
|
Pipelineeingaben akzeptieren? |
false |
Platzhalterzeichen akzeptieren? |
false |
<CommonParameters>
Dieses Cmdlet unterstützt die folgenden allgemeinen Parameter: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer und -OutVariable. Weitere Informationen finden Sie unter about_Commonparameters.
Eingaben und Ausgaben
Der Eingabetyp ist der Typ der Objekte, die über die Pipeline an das Cmdlet übergeben werden können. Der Rückgabetyp ist der Typ der Objekte, die das Cmdlet zurückgibt.
Eingaben |
System.Management.Automation.PSObject Sie können jedes .NET Framework-Objekt über die Pipeline an Export-CSV übergeben. |
Ausgaben |
System.String Die CSV-Liste wird an die im Path-Parameter angegebene Datei gesendet. |
Hinweise
Mit dem Cmdlet "Export-CSV" werden die von Ihnen gesendeten Objekte in eine Reihe von CSV-Zeichenfolgen konvertiert und in der angegebenen Textdatei gespeichert. Sie können Objekte mithilfe von Export-CSV in einer CSV-Datei speichern und dann das Cmdlet "Import-CSV" verwenden, um aus dem Text in der CSV-Datei Objekte zu erstellen.
Jedes Objekt in der CSV-Datei wird durch eine durch Trennzeichen getrennte Liste der Eigenschaftenwerte des Objekts dargestellt. Die Eigenschaftenwerte werden in Zeichenfolgen konvertiert (mit der ToString()-Methode des Objekts). Deshalb werden sie im Allgemeinen durch den Namen des Eigenschaftenwerts dargestellt. Export-CSV exportiert nicht die Methoden des Objekts.
Das Format einer exportierten Datei lautet wie folgt:
– Die erste Zeile der CSV-Datei enthält die Zeichenfolge "#TYPE ", gefolgt vom vollqualifizierten Namen für den .NET Framework-Typ des Objekts, z. B. "#TYPE System.Diagnostics.Process". Um diese Zeile zu unterdrücken, verwenden Sie den NoTypeInformation-Parameter.
– Die nächste Zeile der CSV-Datei stellt die Spaltenüberschriften dar. Sie enthält eine durch Trennzeichen getrennte Liste mit den Namen von allen Eigenschaften des ersten Objekts.
– Weitere Zeilen der Datei bestehen aus durch Trennzeichen getrennten Listen mit den Eigenschaftenwerten jedes Objekts.
Beispiel 1
C:\PS>get-process wmiprvse | select-object basePriority,ID,SessionID,WorkingSet | export-csv -path data.csv
Beschreibung
-----------
Mit diesem Befehl werden einige Eigenschaften des wmiprvse-Prozesses ausgewählt und in die CSV-Datei "data.csv" exportiert.
Beispiel 2
C:\PS>get-process | export-csv processes.csv
C:\PS> get-process | export-csv processes.csv
# In processes.csv
#TYPE System.Diagnostics.Process
__NounName,Name,Handles,VM,WS,PM,NPM,Path,Company,CPU,FileVersion,...
Process,powershell,626,201666560,76058624,61943808,11960,C:\WINDOWS...
Process,powershell,257,151920640,38322176,37052416,7836,C:\WINDOWS\...
Beschreibung
-----------
Mit diesem Befehl werden Objekte, die die Prozesse auf dem Computer darstellen, in die Datei "Processes.csv" im aktuellen Verzeichnis exportiert. Da kein Trennzeichen angegeben ist, werden die Felder in der Datei durch Kommas (,) getrennt.
Beispiel 3
C:\PS>get-process | export-csv processes.csv -Delimiter ";"
# In processes.csv
#TYPE System.Diagnostics.Process
__NounName;Name;Handles;VM;WS;PM;NPM;Path;Company;CPU;FileVersion;...
Process;powershell;626;201666560;76058624;61943808;11960;C:\WINDOWS...
Process;powershell;257;151920640;38322176;37052416;7836;C:\WINDOWS\...
Beschreibung
-----------
Mit diesem Befehl werden Objekte, die die Prozesse auf dem Computer darstellen, in die Datei "Processes.csv" im aktuellen Verzeichnis exportiert. Mit dem Delimiter-Parameter wird das Semikolon (;) angegeben. Daher werden die Felder in der Datei durch Semikolons getrennt.
Beispiel 4
C:\PS>get-process | export-csv processes.csv -UseCulture
Beschreibung
-----------
Mit diesem Befehl werden Objekte, die die Prozesse auf dem Computer darstellen, in die Datei "Processes.csv" im aktuellen Verzeichnis exportiert. Mit dem UseCulture-Parameter wird festgelegt, dass Export-CSV das von der ListSeparator-Eigenschaft der aktuellen Kultur angegebene Trennzeichen verwendet.
Beispiel 5
C:\PS>get-process | export-csv processes.csv -NoTypeInformation
C:\PS> get-process | export-csv processes.csv -NoTypeInformation
# In processes.csv
__NounName,Name,Handles,VM,WS,PM,NPM,Path,Company,CPU,FileVersion,...
Process,powershell,626,201666560,76058624,61943808,11960,C:\WINDOWS...
Process,powershell,257,151920640,38322176,37052416,7836,C:\WINDOWS\...
Beschreibung
-----------
Mit diesem Befehl werden Objekte, die die Prozesse auf dem Computer darstellen, in die Datei "Processes.csv" im aktuellen Verzeichnis exportiert. Die Typinformationen in der Datei werden mithilfe des NoTypeInformation-Parameters unterdrückt.