Export-Csv
Konwertuje obiekty na serię ciągów wartości rozdzielanych przecinkami (CSV) i zapisuje ciągi w pliku.
Składnia
Export-Csv
-InputObject <PSObject>
[[-Path] <String>]
[-LiteralPath <String>]
[-Force]
[-NoClobber]
[-Encoding <Encoding>]
[-Append]
[[-Delimiter] <Char>]
[-IncludeTypeInformation]
[-NoTypeInformation]
[-QuoteFields <String[]>]
[-UseQuotes <QuoteKind>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Export-Csv
-InputObject <PSObject>
[[-Path] <String>]
[-LiteralPath <String>]
[-Force]
[-NoClobber]
[-Encoding <Encoding>]
[-Append]
[-UseCulture]
[-IncludeTypeInformation]
[-NoTypeInformation]
[-QuoteFields <String[]>]
[-UseQuotes <QuoteKind>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Opis
Polecenie cmdlet Export-CSV
tworzy plik CSV przesyłanych obiektów. Każdy obiekt jest wierszem zawierającym rozdzielaną przecinkami listę wartości właściwości obiektu. Za pomocą polecenia cmdlet Export-CSV
można tworzyć arkusze kalkulacyjne i udostępniać dane programom, które akceptują pliki CSV jako dane wejściowe.
Nie należy formatować obiektów przed wysłaniem ich do polecenia cmdlet Export-CSV
. Jeśli Export-CSV
odbiera sformatowane obiekty, plik CSV zawiera właściwości formatu, a nie właściwości obiektu. Aby wyeksportować tylko wybrane właściwości obiektu, użyj polecenia cmdlet Select-Object
.
Przykłady
Przykład 1. Eksportowanie właściwości procesu do pliku CSV
W tym przykładzie wybiera Process obiektów z określonymi właściwościami, eksportuje obiekty do pliku CSV.
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
Polecenie cmdlet Select-Object
. Export-Csv
.
Export-Csv
konwertuje obiekty procesu na serię ciągów CSV. Parametr
Przykład 2. Eksportowanie procesów do pliku rozdzielanego przecinkami
Ten przykład pobiera obiekty Process i eksportuje obiekty do pliku CSV.
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", ...
Polecenie cmdlet Export-Csv
.
Export-Csv
konwertuje obiekty procesu na serię ciągów CSV.
Parametr
Przykład 3. Eksportowanie procesów do pliku rozdzielanego średnikami
Ten przykład pobiera obiekty Process i eksportuje obiekty do pliku z ogranicznikiem średnika.
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"; ...
Polecenie cmdlet Export-Csv
.
Export-Csv
konwertuje obiekty procesu na serię ciągów CSV.
Parametr
Przykład 4. Eksportowanie procesów przy użyciu separatora listy bieżącej kultury
Ten przykład pobiera obiekty Process i eksportuje obiekty do pliku. Ogranicznik jest separatorem listy bieżącej kultury.
(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", ...
Polecenie cmdlet Get-Culture
używa zagnieżdżonych właściwości TextInfo i ListSeparator i wyświetla domyślny separator listy bieżącej kultury. Polecenie cmdlet Export-Csv
.
Export-Csv
konwertuje obiekty procesu na serię ciągów CSV. Parametr
Przykład 5. Eksportowanie procesów z informacjami o typie
W tym przykładzie wyjaśniono, jak uwzględnić informacje nagłówka #TYPE w pliku CSV. Nagłówek #TYPE jest domyślny w wersjach wcześniejszych niż program PowerShell 6.0.
Get-Process | Export-Csv -Path .\Processes.csv -IncludeTypeInformation
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", ...
Polecenie cmdlet Export-Csv
.
Export-Csv
konwertuje obiekty procesu na serię ciągów CSV.
Parametr
Przykład 6. Eksportowanie i dołączanie obiektów do pliku CSV
W tym przykładzie opisano sposób eksportowania obiektów do pliku CSV i używania parametru Append w celu dodania obiektów do istniejącego pliku.
$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"
Polecenie cmdlet Get-Service
pobiera obiekty usługi. Parametr DisplayName zwraca usługi zawierające słowo Application. Obiekty usługi są wysyłane w dół potoku do polecenia cmdlet Select-Object
. $AppService
przechowuje obiekty.
Obiekty $AppService
są wysyłane w dół potoku do polecenia cmdlet Export-Csv
.
Export-Csv
konwertuje obiekty usługi na serię ciągów CSV. Parametr ścieżki
Polecenia cmdlet Get-Service
i Select-Object
są powtarzane w przypadku usług zawierających słowo Windows. Zmienna $WinService
przechowuje obiekty usługi. Polecenie cmdlet Export-Csv
używa parametru Append, aby określić, że obiekty $WinService
są dodawane do istniejącego pliku Services.csv. Polecenie cmdlet Get-Content
jest powtarzane w celu wyświetlenia zaktualizowanego pliku zawierającego dołączone dane.
Przykład 7. Formatowanie polecenia cmdlet w potoku powoduje utworzenie nieoczekiwanych wyników
W tym przykładzie pokazano, dlaczego ważne jest, aby nie używać polecenia cmdlet formatu w potoku. Po odebraniu nieoczekiwanych danych wyjściowych rozwiąż problemy ze składnią potoku.
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",,,,,
Polecenie cmdlet Get-Date
pobiera obiekt DateTime. Obiekt jest wysyłany w dół potoku do polecenia cmdlet Select-Object
. Export-Csv
.
Export-Csv
konwertuje obiekt na format CSV. Parametr
Gdy polecenie cmdlet Format-Table
jest używane w potoku do wybierania właściwości, zostaną odebrane nieoczekiwane wyniki.
Format-Table
wysyła obiekty formatu tabeli w dół potoku do polecenia cmdlet Export-Csv
zamiast obiektu DateTime.
Export-Csv
konwertuje obiekty formatu tabeli na serię ciągów CSV. Polecenie cmdlet Get-Content
wyświetla plik CSV zawierający obiekty formatu tabeli.
Przykład 8. Używanie parametru Force do zastępowania plików tylko do odczytu
W tym przykładzie jest tworzony pusty plik tylko do odczytu i używa parametru Force w celu zaktualizowania pliku.
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"; ...
Polecenie cmdlet Export-Csv
.
Export-Csv
konwertuje obiekty procesu na serię ciągów CSV. Parametr
Parametr Force jest dodawany do polecenia cmdlet Export-Csv
w celu wymuszenia eksportu na zapis w pliku. Polecenie cmdlet
Przykład 9: Używanie parametru Force z funkcją Append
W tym przykładzie pokazano, jak używać parametrów
$Content = [PSCustomObject]@{Name = 'PowerShell'; Version = '7.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 7.0
Windows PowerShell
Wyrażenie tworzy PSCustomObject z właściwościami Name i Version. Wartości są przechowywane w zmiennej $Content
. Zmienna $Content
jest wysyłana w dół potoku do polecenia cmdlet Export-Csv
.
Export-Csv
używa parametru Path i zapisuje plik ParmFile.csv w bieżącym katalogu. Parametr NoTypeInformation usuwa nagłówek informacji #TYPE z danych wyjściowych CSV i nie jest wymagany w programie PowerShell 6.
Inne wyrażenie tworzy $AdditionalContent
. Zmienna $AdditionalContent
jest wysyłana w dół potoku do polecenia cmdlet Export-Csv
. Parametr Append służy do dodawania danych do pliku. Dołączanie kończy się niepowodzeniem, ponieważ występuje niezgodność nazwy właściwości między Version i Edition.
Polecenie cmdlet Export-Csv
Force parametr służy do wymuszania eksportu zapisu w pliku. Właściwość edition
Przykład 10: Eksportowanie do pliku CSV z cudzysłowami wokół dwóch kolumn
Ten przykład konwertuje obiekt DateTime na ciąg CSV.
Get-Date | Export-Csv -QuoteFields "DateTime","Date" -Path .\FTDateTime.csv
Get-Content -Path .\FTDateTime.csv
DisplayHint,"DateTime","Date",Day,DayOfWeek,DayOfYear,Hour,Kind,Millisecond,Minute,Month,Second,Ticks,TimeOfDay,Year
DateTime,"Thursday, August 22, 2019 11:27:34 AM","8/22/2019 12:00:00 AM",22,Thursday,234,11,Local,569,27,8,34,637020700545699784,11:27:34.5699784,2019
Przykład 11: Eksportowanie do pliku CSV przy użyciu cudzysłowów tylko wtedy, gdy jest to konieczne
Ten przykład konwertuje obiekt DateTime na ciąg CSV.
Get-Date | Export-Csv -UseQuotes AsNeeded -Path .\FTDateTime.csv
Get-Content -Path .\FTDateTime.csv
DisplayHint,DateTime,Date,Day,DayOfWeek,DayOfYear,Hour,Kind,Millisecond,Minute,Month,Second,Ticks,TimeOfDay,Year
DateTime,"Thursday, August 22, 2019 11:31:00 AM",8/22/2019 12:00:00 AM,22,Thursday,234,11,Local,713,31,8,0,637020702607132640,11:31:00.7132640,2019
Parametry
-Append
Użyj tego parametru, aby Export-CSV
dodawał dane wyjściowe CSV na końcu określonego pliku. Bez tego parametru Export-CSV
zastępuje zawartość pliku bez ostrzeżenia.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Confirm
Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.
Typ: | SwitchParameter |
Aliasy: | cf |
Position: | Named |
Domyślna wartość: | False |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Delimiter
Określa ogranicznik, aby oddzielić wartości właściwości. Wartość domyślna to przecinek (,
). Wprowadź znak, taki jak dwukropek (:
). Aby określić średnik (;
), należy go ująć w cudzysłów.
Typ: | Char |
Position: | 1 |
Domyślna wartość: | comma (,) |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Encoding
Określa kodowanie wyeksportowanego pliku CSV. Wartość domyślna to utf8NoBOM
.
Dopuszczalne wartości tego parametru są następujące:
-
ascii
: używa kodowania zestawu znaków ASCII (7-bitowych). -
bigendianunicode
: koduje w formacie UTF-16 przy użyciu kolejności bajtów big-endian. -
bigendianutf32
: Koduje w formacie UTF-32 przy użyciu kolejności bajtów big-endian. -
oem
: używa domyślnego kodowania dla programów MS-DOS i konsoli. -
unicode
: Koduje w formacie UTF-16 przy użyciu kolejności bajtów little-endian. -
utf7
: koduje w formacie UTF-7. -
utf8
: koduje w formacie UTF-8. -
utf8BOM
: koduje w formacie UTF-8 za pomocą znacznika kolejności bajtów (BOM) -
utf8NoBOM
: koduje w formacie UTF-8 bez znaku kolejności bajtów (BOM) -
utf32
: koduje w formacie UTF-32.
Począwszy od programu PowerShell 6.2, Kodowanie parametr umożliwia również numeryczne identyfikatory zarejestrowanych stron kodu (na przykład -Encoding 1251
) lub nazwy ciągów zarejestrowanych stron kodu (na przykład -Encoding "windows-1251"
). Aby uzyskać więcej informacji, zobacz dokumentację platformy .NET dotyczącą Encoding.CodePage.
Nuta
UTF-7 * nie jest już zalecane. Zgodnie z programem PowerShell 7.1 ostrzeżenie jest zapisywane, jeśli określisz
Typ: | Encoding |
Dopuszczalne wartości: | ASCII, BigEndianUnicode, BigEndianUTF32, OEM, Unicode, UTF7, UTF8, UTF8BOM, UTF8NoBOM, UTF32 |
Position: | Named |
Domyślna wartość: | UTF8NoBOM |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Force
Ten parametr umożliwia Export-Csv
zastępowanie plików atrybutem tylko do odczytu.
Gdy parametry Force i Append są łączone, obiekty, które zawierają niezgodne właściwości, mogą być zapisywane w pliku CSV. Tylko te właściwości, które są zgodne, są zapisywane w pliku. Niedopasowane właściwości są odrzucane.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-IncludeTypeInformation
Gdy ten parametr jest używany pierwszy wiersz danych wyjściowych CSV zawiera #TYPE po nim w pełni kwalifikowaną nazwę typu obiektu. Na przykład #TYPE System.Diagnostics.Process.
Ten parametr został wprowadzony w programie PowerShell 6.0.
Typ: | SwitchParameter |
Aliasy: | ITI |
Position: | Named |
Domyślna wartość: | #TYPE <Object> |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-InputObject
Określa obiekty do wyeksportowania jako ciągi CSV. Wprowadź zmienną zawierającą obiekty lub wpisz polecenie lub wyrażenie, które pobiera obiekty. Można również potokować obiekty do Export-CSV
.
Typ: | PSObject |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-LiteralPath
Określa ścieżkę do pliku wyjściowego CSV. W przeciwieństwie do
Typ: | String |
Aliasy: | PSPath, LP |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-NoClobber
Użyj tego parametru, aby Export-CSV
nie zastępuje istniejącego pliku. Domyślnie, jeśli plik istnieje w określonej ścieżce, Export-CSV
zastąpi plik bez ostrzeżenia.
Typ: | SwitchParameter |
Aliasy: | NoOverwrite |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-NoTypeInformation
Usuwa nagłówek informacji #TYPE z danych wyjściowych. Ten parametr stał się wartością domyślną w programie PowerShell 6.0 i został uwzględniony w celu zapewnienia zgodności z poprzednimi wersjami.
Typ: | SwitchParameter |
Aliasy: | NTI |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Path
Wymagany parametr określający lokalizację zapisywania pliku wyjściowego CSV.
Typ: | String |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-QuoteFields
Określa nazwy kolumn, które powinny być cytowane. Gdy ten parametr jest używany, tylko określone kolumny są cytowane. Ten parametr został dodany w programie PowerShell 7.0.
Typ: | String[] |
Aliasy: | QF |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-UseCulture
Używa separatora listy dla bieżącej kultury jako ogranicznika elementu. Aby znaleźć separator listy dla kultury, użyj następującego polecenia: (Get-Culture).TextInfo.ListSeparator
.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-UseQuotes
Określa, kiedy cudzysłowy są używane w plikach CSV. Możliwe wartości to:
- Nigdy — nic nie cytuj
- Zawsze — cytuj wszystko (zachowanie domyślne)
- AsNeeded — tylko pola cudzysłowu zawierające znak ogranicznika
Ten parametr został dodany w programie PowerShell 7.0.
Typ: | Microsoft.PowerShell.Commands.BaseCsvWritingCommand+QuoteKind |
Aliasy: | UQ |
Position: | Named |
Domyślna wartość: | Always |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-WhatIf
Uniemożliwia przetwarzanie lub wprowadzanie zmian przez polecenie cmdlet. Dane wyjściowe pokazują, co się stanie, gdyby polecenie cmdlet zostało uruchomione.
Typ: | SwitchParameter |
Aliasy: | wi |
Position: | Named |
Domyślna wartość: | False |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
Do Export-CSV
można przekazać dowolny obiekt z kartą systemu rozszerzonego typu (ETS) .
Dane wyjściowe
Lista CSV jest wysyłana do pliku wyznaczonego w parametrze Ścieżka.
Uwagi
Polecenie cmdlet Export-CSV
konwertuje obiekty przesyłane do serii ciągów CSV i zapisuje je w określonym pliku tekstowym. Za pomocą Export-CSV -IncludeTypeInformation
można zapisywać obiekty w pliku CSV, a następnie użyć polecenia cmdlet Import-Csv
do utworzenia obiektów z tekstu w pliku CSV.
W pliku CSV każdy obiekt jest reprezentowany przez rozdzielaną przecinkami listę wartości właściwości obiektu. Wartości właściwości są konwertowane na ciągi przy użyciu metody Export-CSV -IncludeTypeInformation
nie eksportuje metod obiektu.
Ciągi CSV są danymi wyjściowymi w następujący sposób:
- Jeśli jest używana IncludeTypeInformation, pierwszy ciąg zawiera nagłówek #TYPE informacji, a następnie w pełni kwalifikowaną nazwę typu obiektu. Na przykład #TYPE System.Diagnostics.Process.
- Jeśli includeTypeInformation nie jest używany pierwszy ciąg zawiera nagłówki kolumn. Nagłówki zawierają nazwy właściwości pierwszego obiektu jako listę rozdzielaną przecinkami.
- Pozostałe ciągi zawierają rozdzielane przecinkami listy wartości właściwości każdego obiektu.
Począwszy od programu PowerShell 6.0 domyślne zachowanie Export-CSV
nie polega na dołączaniu #TYPE informacji w pliku CSV i NoTypeInformation.
IncludeTypeInformation może służyć do uwzględnienia informacji #TYPE i emulowania domyślnego zachowania Export-CSV
przed programem PowerShell 6.0.
Podczas przesyłania wielu obiektów do Export-CSV
Export-CSV
organizuje plik na podstawie właściwości pierwszego przesyłanego obiektu. Jeśli pozostałe obiekty nie mają jednej z określonych właściwości, wartość właściwości tego obiektu ma wartość null, reprezentowana przez dwa kolejne przecinki. Jeśli pozostałe obiekty mają dodatkowe właściwości, te wartości właściwości nie są uwzględniane w pliku.
Możesz użyć polecenia cmdlet Import-Csv
, aby odtworzyć obiekty z ciągów CSV w plikach. Wynikowe obiekty to wersje CSV oryginalnych obiektów, które składają się z reprezentacji ciągów wartości właściwości i bez metod.
Polecenia cmdlet ConvertTo-Csv
i ConvertFrom-Csv
konwertują obiekty na ciągi CSV i ciągi CSV.
Export-CSV
jest taka sama jak ConvertTo-CSV
, z tą różnicą, że zapisuje ciągi CSV w pliku.