Export-Csv
Konvertiert Objekte in eine Reihe von CSV-Zeichenfolgen (Kommagetrennte Werte) und speichert die Zeichenfolgen in einer Datei.
Syntax
Export-Csv
[[-Path] <string>]
[[-Delimiter] <char>]
-InputObject <psobject>
[-LiteralPath <string>]
[-Force]
[-NoClobber]
[-Encoding <string>]
[-Append]
[-NoTypeInformation]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Export-Csv
[[-Path] <string>]
-InputObject <psobject>
[-LiteralPath <string>]
[-Force]
[-NoClobber]
[-Encoding <string>]
[-Append]
[-UseCulture]
[-NoTypeInformation]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Beschreibung
Das Export-CSV
Cmdlet erstellt eine CSV-Datei der von Ihnen übermittelten Objekte. Jedes Objekt ist eine Zeile, die eine durch Trennzeichen getrennte Liste der Eigenschaftswerte des Objekts enthält. Mit dem Export-CSV
Cmdlet können Sie Tabellenkalkulationen erstellen und Daten für Programme freigeben, die CSV-Dateien als Eingabe akzeptieren.
Formatieren Sie keine Objekte, bevor Sie sie an das Export-CSV
Cmdlet senden. Wenn Export-CSV
formatierte Objekte empfangen werden, enthält die CSV-Datei die Formateigenschaften und nicht die Objekteigenschaften. Verwenden Sie das Select-Object
Cmdlet, um nur ausgewählte Eigenschaften eines Objekts zu exportieren.
Beispiele
Beispiel 1: Exportieren von Prozesseigenschaften in eine CSV-Datei
In diesem Beispiel werden Process-Objekte mit bestimmten Eigenschaften ausgewählt und die Objekte in eine CSV-Datei exportiert.
Get-Process -Name WmiPrvSE | Select-Object -Property BasePriority,Id,SessionId,WorkingSet |
Export-Csv -Path .\WmiData.csv -NoTypeInformation
Import-Csv -Path .\WmiData.csv
BasePriority Id SessionId WorkingSet
------------ -- --------- ----------
8 976 0 20267008
8 2292 0 36786176
8 3816 0 30351360
8 8604 0 15011840
8 10008 0 8830976
8 11764 0 14237696
8 54632 0 9502720
Das Get-Process
Cmdlet ruft die Process-Objekte ab. Der Name-Parameter filtert die Ausgabe so, dass nur die WmiPrvSE-Prozessobjekte enthalten sind. Die Prozessobjekte werden in der Pipeline an das Select-Object
Cmdlet gesendet. Select-Object
verwendet den Property-Parameter , um eine Teilmenge der Prozessobjekteigenschaften auszuwählen. Die Prozessobjekte werden in der Pipeline an das Export-Csv
Cmdlet gesendet. Export-Csv
konvertiert die Prozessobjekte in eine Reihe von CSV-Zeichenfolgen. Der Path-Parameter gibt an, dass die WmiData.csv-Datei im aktuellen Verzeichnis gespeichert wird. Der NoTypeInformation-Parameter entfernt den #TYPE-Informationsheader aus der CSV-Ausgabe und ist in PowerShell 6 nicht erforderlich. Das Import-Csv
Cmdlet verwendet den Parameter Path , um die Datei anzuzeigen, die sich im aktuellen Verzeichnis befindet.
Beispiel 2: Exportieren von Prozessen in eine durch Trennzeichen getrennte Datei
In diesem Beispiel werden Process-Objekte abgerufen und die Objekte in eine CSV-Datei exportiert.
Get-Process | Export-Csv -Path .\Processes.csv -NoTypeInformation
Get-Content -Path .\Processes.csv
"Name","SI","Handles","VM","WS","PM","NPM","Path","Parent","Company","CPU","FileVersion", ...
"ApplicationFrameHost","4","511","2203597099008","35364864","21979136","30048", ...
Das Get-Process
Cmdlet ruft Process-Objekte ab. Die Prozessobjekte werden in der Pipeline an das Export-Csv
Cmdlet gesendet. Export-Csv
konvertiert die Prozessobjekte in eine Reihe von CSV-Zeichenfolgen.
Der Path-Parameter gibt an, dass die Processes.csv-Datei im aktuellen Verzeichnis gespeichert wird. Der NoTypeInformation-Parameter entfernt den #TYPE-Informationsheader aus der CSV-Ausgabe und ist in PowerShell 6 nicht erforderlich. Das Get-Content
Cmdlet verwendet den Parameter Path , um die Datei anzuzeigen, die sich im aktuellen Verzeichnis befindet.
Beispiel 3: Exportieren von Prozessen in eine Datei mit Semikolonstrennzeichen
In diesem Beispiel werden Process-Objekte abgerufen und die Objekte in eine Datei mit einem Semikolontrennzeichen exportiert.
Get-Process | Export-Csv -Path .\Processes.csv -Delimiter ';' -NoTypeInformation
Get-Content -Path .\Processes.csv
"Name";"SI";"Handles";"VM";"WS";"PM";"NPM";"Path";"Parent";"Company";"CPU";"FileVersion"; ...
"ApplicationFrameHost";"4";"509";"2203595321344";"34807808";"21770240";"29504"; ...
Das Get-Process
Cmdlet ruft Process-Objekte ab. Die Prozessobjekte werden in der Pipeline an das Export-Csv
Cmdlet gesendet. Export-Csv
konvertiert die Prozessobjekte in eine Reihe von CSV-Zeichenfolgen.
Der Path-Parameter gibt an, dass die Processes.csv-Datei im aktuellen Verzeichnis gespeichert wird. Der Parameter Delimiter gibt ein Semikolon an, um die Zeichenfolgenwerte zu trennen. Der NoTypeInformation-Parameter entfernt den #TYPE-Informationsheader aus der CSV-Ausgabe und ist in PowerShell 6 nicht erforderlich. Das Get-Content
Cmdlet verwendet den Parameter Path , um die Datei anzuzeigen, die sich im aktuellen Verzeichnis befindet.
Beispiel 4: Exportieren von Prozessen mit dem Listentrennzeichen der aktuellen Kultur
In diesem Beispiel werden Process-Objekte abgerufen und die Objekte in eine Datei exportiert. Das Trennzeichen ist das Listentrennzeichen der aktuellen Kultur.
(Get-Culture).TextInfo.ListSeparator
Get-Process | Export-Csv -Path .\Processes.csv -UseCulture -NoTypeInformation
Get-Content -Path .\Processes.csv
"Name","SI","Handles","VM","WS","PM","NPM","Path","Parent","Company","CPU","FileVersion", ...
"ApplicationFrameHost","4","511","2203597099008","35364864","21979136","30048", ...
Das Get-Culture
Cmdlet verwendet die geschachtelten Eigenschaften TextInfo und ListSeparator und zeigt das Standardlistentrennzeichen der aktuellen Kultur an. Das Get-Process
Cmdlet ruft Process-Objekte ab.
Die Prozessobjekte werden in der Pipeline an das Export-Csv
Cmdlet gesendet. Export-Csv
konvertiert die Prozessobjekte in eine Reihe von CSV-Zeichenfolgen. Der Path-Parameter gibt an, dass die Processes.csv-Datei im aktuellen Verzeichnis gespeichert wird. Der UseCulture-Parameter verwendet das Standardlistentrennzeichen der aktuellen Kultur als Trennzeichen. Der NoTypeInformation-Parameter entfernt den #TYPE-Informationsheader aus der CSV-Ausgabe und ist in PowerShell 6 nicht erforderlich. Das Get-Content
Cmdlet verwendet den Parameter Path , um die Datei anzuzeigen, die sich im aktuellen Verzeichnis befindet.
Beispiel 5: Exportieren von Prozessen mit Typinformationen
In diesem Beispiel wird erläutert, wie Sie die #TYPE Headerinformationen in eine CSV-Datei einschließen. Der #TYPE-Header ist der Standard in Versionen vor PowerShell 6.0.
Get-Process | Export-Csv -Path .\Processes.csv
Get-Content -Path .\Processes.csv
#TYPE System.Diagnostics.Process
"Name","SI","Handles","VM","WS","PM","NPM","Path","Company","CPU","FileVersion", ...
"ApplicationFrameHost","4","507","2203595001856","35139584","20934656","29504", ...
Das Get-Process
Cmdlet ruft Process-Objekte ab. Die Prozessobjekte werden in der Pipeline an das Export-Csv
Cmdlet gesendet. Export-Csv
konvertiert die Prozessobjekte in eine Reihe von CSV-Zeichenfolgen.
Der Path-Parameter gibt an, dass die Processes.csv-Datei im aktuellen Verzeichnis gespeichert wird. Das Get-Content
Cmdlet verwendet den Parameter Path , um die Datei anzuzeigen, die sich im aktuellen Verzeichnis befindet.
Beispiel 6: Exportieren und Anfügen von Objekten an eine CSV-Datei
In diesem Beispiel wird beschrieben, wie Sie Objekte in eine CSV-Datei exportieren und den Append-Parameter verwenden, um einer vorhandenen Datei Objekte hinzuzufügen.
$AppService = (Get-Service -DisplayName *Application* | Select-Object -Property DisplayName, Status)
$AppService | Export-Csv -Path .\Services.Csv -NoTypeInformation
Get-Content -Path .\Services.Csv
$WinService = (Get-Service -DisplayName *Windows* | Select-Object -Property DisplayName, Status)
$WinService | Export-Csv -Path ./Services.csv -NoTypeInformation -Append
Get-Content -Path .\Services.Csv
"DisplayName","Status"
"Application Layer Gateway Service","Stopped"
"Application Identity","Running"
"Windows Audio Endpoint Builder","Running"
"Windows Audio","Running"
"Windows Event Log","Running"
Das Get-Service
Cmdlet ruft Dienstobjekte ab. Der DisplayName-Parameter gibt Dienste zurück, die das Wort Anwendung enthalten. Die Dienstobjekte werden in der Pipeline an das Select-Object
Cmdlet gesendet. Select-Object
verwendet den Property-Parameter , um die Eigenschaften DisplayName und Status anzugeben. Die $AppService
Variable speichert die -Objekte.
Die $AppService
Objekte werden in der Pipeline an das Export-Csv
Cmdlet gesendet. Export-Csv
konvertiert die Dienstobjekte in eine Reihe von CSV-Zeichenfolgen. Der Path-Parameter gibt an, dass die Services.csv-Datei im aktuellen Verzeichnis gespeichert wird. Der NoTypeInformation-Parameter entfernt den #TYPE-Informationsheader aus der CSV-Ausgabe und ist in PowerShell 6 nicht erforderlich. Das Get-Content
Cmdlet verwendet den Parameter Path , um die Datei anzuzeigen, die sich im aktuellen Verzeichnis befindet.
Die Get-Service
Cmdlets und Select-Object
werden für Dienste wiederholt, die das Wort Windows enthalten. Die $WinService
Variable speichert die Dienstobjekte. Das Export-Csv
Cmdlet verwendet den Append-Parameter , um anzugeben, dass die $WinService
Objekte der vorhandenen Services.csv-Datei hinzugefügt werden. Das Get-Content
Cmdlet wird wiederholt, um die aktualisierte Datei anzuzeigen, die die angefügten Daten enthält.
Beispiel 7: Format-Cmdlet in einer Pipeline führt zu unerwarteten Ergebnissen
Dieses Beispiel zeigt, warum es wichtig ist, kein Format-Cmdlet innerhalb einer Pipeline zu verwenden. Wenn eine unerwartete Ausgabe empfangen wird, behandeln Sie die Pipelinesyntax.
Get-Date | Select-Object -Property DateTime, Day, DayOfWeek, DayOfYear |
Export-Csv -Path .\DateTime.csv -NoTypeInformation
Get-Content -Path .\DateTime.csv
"DateTime","Day","DayOfWeek","DayOfYear"
"Wednesday, January 2, 2019 14:59:34","2","Wednesday","2"
Get-Date | Format-Table -Property DateTime, Day, DayOfWeek, DayOfYear |
Export-Csv -Path .\FTDateTime.csv -NoTypeInformation
Get-Content -Path .\FTDateTime.csv
"ClassId2e4f51ef21dd47e99d3c952918aff9cd","pageHeaderEntry","pageFooterEntry","autosizeInfo", ...
"033ecb2bc07a4d43b5ef94ed5a35d280",,,,"Microsoft.PowerShell.Commands.Internal.Format. ...
"9e210fe47d09416682b841769c78b8a3",,,,,
"27c87ef9bbda4f709f6b4002fa4af63c",,,,,
"4ec4f0187cb04f4cb6973460dfe252df",,,,,
"cf522b78d86c486691226b40aa69e95c",,,,,
Das Get-Date
Cmdlet ruft das DateTime-Objekt ab. Das Objekt wird in der Pipeline an das Select-Object
Cmdlet gesendet. Select-Object
verwendet den Parameter Property , um eine Teilmenge der Objekteigenschaften auszuwählen. Das Objekt wird in der Pipeline an das Export-Csv
Cmdlet gesendet. Export-Csv
konvertiert das Objekt in ein CSV-Format. Der Path-Parameter gibt an, dass die DateTime.csv-Datei im aktuellen Verzeichnis gespeichert wird. Der NoTypeInformation-Parameter entfernt den #TYPE-Informationsheader aus der CSV-Ausgabe und ist in PowerShell 6 nicht erforderlich. Das Get-Content
Cmdlet verwendet den Path-Parameter , um die CSV-Datei anzuzeigen, die sich im aktuellen Verzeichnis befindet.
Wenn das Format-Table
Cmdlet innerhalb der Pipeline verwendet wird, um Eigenschaften auszuwählen, werden unerwartete Ergebnisse empfangen. Format-Table
sendet Tabellenformatobjekte in der Pipeline an das Export-Csv
Cmdlet und nicht an das DateTime-Objekt . Export-Csv
konvertiert die Tabellenformatobjekte in eine Reihe von CSV-Zeichenfolgen. Das Get-Content
Cmdlet zeigt die CSV-Datei an, die die Tabellenformatobjekte enthält.
Beispiel 8: Verwenden des Parameters Force zum Überschreiben schreibgeschützter Dateien
In diesem Beispiel wird eine leere schreibgeschützte Datei erstellt und der Force-Parameter verwendet, um die Datei zu aktualisieren.
New-Item -Path .\ReadOnly.csv -ItemType File
Set-ItemProperty -Path .\ReadOnly.csv -Name IsReadOnly -Value $true
Get-Process | Export-Csv -Path .\ReadOnly.csv -NoTypeInformation
Export-Csv : Access to the path 'C:\ReadOnly.csv' is denied.
At line:1 char:15
+ Get-Process | Export-Csv -Path .\ReadOnly.csv -NoTypeInformation
+ ~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : OpenError: (:) [Export-Csv], UnauthorizedAccessException
+ FullyQualifiedErrorId : FileOpenFailure,Microsoft.PowerShell.Commands.ExportCsvCommand
Get-Process | Export-Csv -Path .\ReadOnly.csv -NoTypeInformation -Force
Get-Content -Path .\ReadOnly.csv
"Name";"SI";"Handles";"VM";"WS";"PM";"NPM";"Path";"Parent";"Company";"CPU";"FileVersion"; ...
"ApplicationFrameHost";"4";"509";"2203595321344";"34807808";"21770240";"29504"; ...
Das New-Item
Cmdlet verwendet die Parameter Path und ItemType , um die ReadOnly.csv-Datei im aktuellen Verzeichnis zu erstellen. Das Set-ItemProperty
Cmdlet verwendet die Parameter Name und Value , um die IsReadOnly-Eigenschaft der Datei in true zu ändern. Das Get-Process
Cmdlet ruft Process-Objekte ab. Die Prozessobjekte werden in der Pipeline an das Export-Csv
Cmdlet gesendet. Export-Csv
konvertiert die Prozessobjekte in eine Reihe von CSV-Zeichenfolgen. Der Path-Parameter gibt an, dass die ReadOnly.csv-Datei im aktuellen Verzeichnis gespeichert wird. Der NoTypeInformation-Parameter entfernt den #TYPE-Informationsheader aus der CSV-Ausgabe und ist in PowerShell 6 nicht erforderlich. Die Ausgabe zeigt, dass die Datei nicht geschrieben wird, weil der Zugriff verweigert wird.
Der Force-Parameter wird dem Export-Csv
Cmdlet hinzugefügt, um zu erzwingen, dass der Export in die Datei schreibt. Das Get-Content
Cmdlet verwendet den Parameter Path , um die Datei anzuzeigen, die sich im aktuellen Verzeichnis befindet.
Beispiel 9: Verwenden des Force-Parameters mit Append
In diesem Beispiel wird gezeigt, wie die Parameter Force und Append verwendet werden. Wenn diese Parameter kombiniert werden, können nicht übereinstimmende Objekteigenschaften in eine CSV-Datei geschrieben werden.
$Content = [PSCustomObject]@{Name = 'PowerShell Core'; Version = '6.0'}
$Content | Export-Csv -Path .\ParmFile.csv -NoTypeInformation
$AdditionalContent = [PSCustomObject]@{Name = 'Windows PowerShell'; Edition = 'Desktop'}
$AdditionalContent | Export-Csv -Path .\ParmFile.csv -NoTypeInformation -Append
Export-Csv : Cannot append CSV content to the following file: ParmFile.csv.
The appended object does not have a property that corresponds to the following column:
Version. To continue with mismatched properties, add the -Force parameter, and then retry
the command.
At line:1 char:22
+ $AdditionalContent | Export-Csv -Path .\ParmFile.csv -NoTypeInformation -Append
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidData: (Version:String) [Export-Csv], InvalidOperationException
+ FullyQualifiedErrorId : CannotAppendCsvWithMismatchedPropertyNames,Microsoft.PowerShell. ...
$AdditionalContent | Export-Csv -Path .\ParmFile.csv -NoTypeInformation -Append -Force
Import-Csv -Path .\ParmFile.csv
Name Version
---- -------
PowerShell Core 6.0
Windows PowerShell
Ein Ausdruck erstellt das PSCustomObject mit den Eigenschaften Name und Version . Die Werte werden in der $Content
Variablen gespeichert. Die $Content
Variable wird an das Export-Csv
Cmdlet gesendet. Export-Csv
verwendet den Path-Parameter und speichert die ParmFile.csv-Datei im aktuellen Verzeichnis. Der NoTypeInformation-Parameter entfernt den #TYPE-Informationsheader aus der CSV-Ausgabe und ist in PowerShell 6 nicht erforderlich.
Ein anderer Ausdruck erstellt ein PSCustomObject mit den Eigenschaften Name und Edition . Die Werte werden in der $AdditionalContent
Variablen gespeichert. Die $AdditionalContent
Variable wird an das Export-Csv
Cmdlet gesendet. Der Append-Parameter wird verwendet, um die Daten zur Datei hinzuzufügen. Der Anfügevorgang schlägt fehl, da zwischen Version und Edition ein Eigenschaftsnamekonflikt besteht.
Das Export-Csv
Cmdlet Force-Parameter wird verwendet, um zu erzwingen, dass der Export in die Datei schreibt. Die Edition-Eigenschaft wird verworfen. Das Import-Csv
Cmdlet verwendet den Parameter Path , um die Datei anzuzeigen, die sich im aktuellen Verzeichnis befindet.
Parameter
-Append
Verwenden Sie diesen Parameter, Export-CSV
damit die CSV-Ausgabe am Ende der angegebenen Datei hinzugefügt wird. Ohne diesen Parameter Export-CSV
ersetzt der Dateiinhalt ohne Warnung.
Dieser Parameter wurde in Windows PowerShell 3.0 eingeführt.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Delimiter
Gibt ein Trennzeichen zum Trennen der Eigenschaftswerte 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.
Type: | Char |
Position: | 1 |
Default value: | comma (,) |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Encoding
Gibt den Typ der Codierung für die Zieldatei an. Der Standardwert ist ASCII.
Die zulässigen Werte für diesen Parameter sind wie folgt:
- ASCII Verwendet ASCII (7-Bit)-Zeichensatz.
- BigEndianUnicode Verwendet UTF-16 mit der Big-Endian-Bytereihenfolge.
- Standard Verwendet die Codierung, die der aktiven Codepage des Systems (normalerweise ANSI) entspricht.
- OEM Verwendet die Codierung, die der aktuellen OEM-Codepage des Systems entspricht.
- Unicode Verwendet UTF-16 mit der Little-Endian-Bytereihenfolge.
- UTF7 Verwendet UTF-7.
- UTF8 Verwendet UTF-8.
- UTF32 Verwendet UTF-32 mit der Little-Endian-Bytereihenfolge.
Type: | String |
Accepted values: | ASCII, BigEndianUnicode, Default, OEM, Unicode, UTF7, UTF8, UTF32 |
Position: | Named |
Default value: | ASCII |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Mit diesem Parameter können Export-Csv
Dateien mit dem schreibgeschützten Attribut überschrieben werden.
Wenn die Parameter Force und Append kombiniert werden, können Objekte, die nicht übereinstimmende Eigenschaften enthalten, in eine CSV-Datei geschrieben werden. Nur die Eigenschaften, die übereinstimmen, werden in die Datei geschrieben. Die nicht übereinstimmende Eigenschaften werden verworfen.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Gibt die als CSV-Zeichenfolgen zu exportierenden Objekte an. Geben Sie eine Variable ein, die die Objekte enthält, oder geben Sie einen Befehl oder einen Ausdruck ein, durch den die Objekte abgerufen werden. Sie können objekte auch an pipen Export-CSV
.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-LiteralPath
Gibt den Pfad zur CSV-Ausgabedatei an. Im Gegensatz zu Path wird der Wert des LiteralPath-Parameters genauso verwendet, wie er eingegeben wurde. Es werden keine Zeichen als Platzhalter interpretiert. Wenn der Pfad Escapezeichen enthält, verwenden Sie einzelne Anführungszeichen. Einzelne Anführungszeichen weisen PowerShell an, keine Zeichen als Escapesequenzen zu interpretieren.
Type: | String |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoClobber
Verwenden Sie diesen Parameter, Export-CSV
damit eine vorhandene Datei nicht überschrieben wird. Wenn die Datei im angegebenen Pfad vorhanden ist, Export-CSV
wird die Datei standardmäßig ohne Warnung überschrieben.
Type: | SwitchParameter |
Aliases: | NoOverwrite |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoTypeInformation
Entfernt den #TYPE-Informationsheader aus der Ausgabe. Dieser Parameter wurde zum Standard in PowerShell 6.0 und ist aus Gründen der Abwärtskompatibilität enthalten.
Type: | SwitchParameter |
Aliases: | NTI |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Ein erforderlicher Parameter, der den Speicherort angibt, an dem die CSV-Ausgabedatei gespeichert werden soll.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseCulture
Verwendet das Listentrennzeichen für die aktuelle Kultur als Elementtrennzeichen. Verwenden Sie den folgenden Befehl, um das Listentrennzeichen für eine Kultur zu suchen: (Get-Culture).TextInfo.ListSeparator
.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Verhindert, dass das Cmdlet verarbeitet wird oder Änderungen vornimmt. Die Ausgabe zeigt, was passieren würde, wenn das Cmdlet ausgeführt würde.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Eingaben
Sie können jedes Objekt mit einem ETS-Adapter (Extended Type System) an übergeben Export-CSV
.
Ausgaben
Die CSV-Liste wird an die im Path-Parameter festgelegte Datei gesendet.
Hinweise
Das Export-CSV
Cmdlet konvertiert die von Ihnen übermittelten Objekte in eine Reihe von CSV-Zeichenfolgen und speichert sie in der angegebenen Textdatei. Sie können verwenden Export-CSV
, um Objekte in einer CSV-Datei zu speichern und dann das Import-Csv
Cmdlet zu verwenden, um Objekte aus der CSV-Datei zu erstellen.
In der CSV-Datei wird jedes Objekt durch eine durch Trennzeichen getrennte Liste der Eigenschaftswerte des Objekts dargestellt. Die Eigenschaftswerte werden mithilfe der ToString() -Methode in Zeichenfolgen konvertiert. Die Zeichenfolgen werden durch den Eigenschaftenwertnamen dargestellt. 'Export-CSV exportiert die Methoden des -Objekts nicht.
Die CSV-Zeichenfolgen werden wie folgt ausgegeben:
- Standardmäßig enthält die erste Zeichenfolge den #TYPE Informationsheader gefolgt vom vollqualifizierten Namen des Objekttyps. Beispielsweise #TYPE System.Diagnostics.Process.
- Wenn NoTypeInformation verwendet wird, enthält die erste Zeichenfolge die Spaltenüberschriften. Die Header enthalten die Eigenschaftennamen des ersten Objekts als durch Trennzeichen getrennte Liste.
- Die restlichen Zeichenfolgen enthalten durch Trennzeichen getrennte Listen der Eigenschaftenwerte jedes Objekts.
Wenn Sie mehrere Objekte an Export-CSV
übermitteln, Export-CSV
wird die Datei basierend auf den Eigenschaften des ersten Von Ihnen übermittelten Objekts organisiert. Wenn die übrigen Objekte nicht über eine der angegebenen Eigenschaften verfügen, ist der Eigenschaftswert dieses Objekts NULL, was durch zwei aufeinander folgende Kommas dargestellt wird. Wenn die übrigen Objekte zusätzliche Eigenschaften aufweisen, sind diese Eigenschaftenwerte nicht in der Datei enthalten.
Sie können das Import-Csv
Cmdlet verwenden, um Objekte aus den CSV-Zeichenfolgen in den Dateien neu zu erstellen. Die resultierenden Objekte sind CSV-Versionen der ursprünglichen Objekte, die aus den Zeichenfolgendarstellungen der Eigenschaftswerte bestehen und die keine Methoden haben.
Die ConvertTo-Csv
Cmdlets und ConvertFrom-Csv
konvertieren Objekte in CSV-Zeichenfolgen und aus CSV-Zeichenfolgen. Export-CSV
ist identisch mit ConvertTo-CSV
, mit dem Unterschied, dass die CSV-Zeichenfolgen in einer Datei gespeichert werden.