Export-Csv
Převede objekty na řadu řetězců hodnot oddělených znakem (CSV) a uloží řetězce do souboru.
Syntaxe
Delimiter (Výchozí)
Export-Csv
[[-Path] <String>]
[[-Delimiter] <Char>]
-InputObject <PSObject>
[-LiteralPath <String>]
[-Force]
[-NoClobber]
[-Encoding <Encoding>]
[-Append]
[-IncludeTypeInformation]
[-NoTypeInformation]
[-QuoteFields <String[]>]
[-UseQuotes <QuoteKind>]
[-NoHeader]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
UseCulture
Export-Csv
[[-Path] <String>]
-InputObject <PSObject>
[-LiteralPath <String>]
[-Force]
[-NoClobber]
[-Encoding <Encoding>]
[-Append]
[-UseCulture]
[-IncludeTypeInformation]
[-NoTypeInformation]
[-QuoteFields <String[]>]
[-UseQuotes <QuoteKind>]
[-NoHeader]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Rutina Export-Csv vytvoří soubor CSV objektů, které odešlete. Každý objekt je řádek, který obsahuje seznam hodnot vlastností objektu oddělený znakem. Pomocí rutiny Export-Csv můžete vytvářet tabulky a sdílet data s programy, které přijímají soubory CSV jako vstup.
Před odesláním do rutiny Export-Csv objekty neformátujte. Pokud Export-Csv obdrží formátované objekty, soubor CSV obsahuje vlastnosti formátu, nikoli vlastnosti objektu. Pokud chcete exportovat pouze vybrané vlastnosti objektu, použijte rutinu Select-Object.
Příklady
Příklad 1: Export vlastností procesu do souboru CSV
Tento příklad vybere Process objekty s konkrétními vlastnostmi, exportuje objekty do souboru 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
Rutina Get-Process získá objekty Process. Parametr Name filtruje výstup tak, aby zahrnoval pouze objekty procesu WmiPrvSE. Objekty procesu se odesílají do kanálu do rutiny Select-Object.
Select-Object pomocí parametru vlastnosti vybere podmnožinu vlastností objektu procesu. Objekty procesu se odesílají do kanálu do rutiny Export-Csv.
Export-Csv převede objekty procesu na řadu řetězců CSV. Parametr Cesta určuje, že soubor WmiData.csv je uložen v aktuálním adresáři. Parametr NoTypeInformation odebere hlavičku informací #TYPE z výstupu CSV a není vyžadována v PowerShellu 6. Rutina Import-Csv používá parametr Path k zobrazení souboru umístěného v aktuálním adresáři.
Příklad 2: Export procesů do souboru s oddělovači
Tento příklad získá Process objekty a exportuje objekty do souboru 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", ...
Rutina Get-Process získá objekty Process. Objekty procesu se odesílají do kanálu do rutiny Export-Csv.
Export-Csv převede objekty procesu na řadu řetězců CSV. Parametr Cesta určuje, že soubor Processes.csv je uložen v aktuálním adresáři. Parametr NoTypeInformation odebere hlavičku informací #TYPE z výstupu CSV a není vyžadována v PowerShellu 6. Rutina Get-Content používá parametr Path k zobrazení souboru umístěného v aktuálním adresáři.
Příklad 3: Export procesů do souboru s oddělovači středníkem
Tento příklad získá Process objekty a exportuje objekty do souboru s oddělovačem středníku.
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"; ...
Rutina Get-Process získá objekty Process. Objekty procesu se odesílají do kanálu do rutiny Export-Csv.
Export-Csv převede objekty procesu na řadu řetězců CSV. Parametr Cesta určuje, že soubor Processes.csv je uložen v aktuálním adresáři. Parametr oddělovače určuje středník pro oddělení řetězcových hodnot. Parametr NoTypeInformation odebere hlavičku informací #TYPE z výstupu CSV a není vyžadována v PowerShellu 6. Rutina Get-Content používá parametr Path k zobrazení souboru umístěného v aktuálním adresáři.
Příklad 4: Export procesů pomocí oddělovače seznamu aktuální jazykové verze
Tento příklad získá Process objekty a exportuje objekty do souboru. Oddělovač je oddělovač seznamu aktuální jazykové verze.
(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", ...
Rutina Get-Culture používá vnořené vlastnosti TextInfo a ListSeparator a zobrazí výchozí oddělovač seznamu aktuální jazykové verze. Rutina Get-Process získá objekty Process. Objekty procesu se odesílají do kanálu do rutiny Export-Csv.
Export-Csv převede objekty procesu na řadu řetězců CSV. Parametr Cesta určuje, že soubor Processes.csv je uložen v aktuálním adresáři. Parametr UseCulture používá jako oddělovač výchozího seznamu aktuální jazykové verze. Parametr NoTypeInformation odebere hlavičku informací #TYPE z výstupu CSV a není vyžadována v PowerShellu 6.
Rutina Get-Content používá parametr Path k zobrazení souboru umístěného v aktuálním adresáři.
Příklad 5: Export procesů s informacemi o typu
Tento příklad vysvětluje, jak do souboru CSV zahrnout informace #TYPE záhlaví. Hlavička #TYPE je výchozí ve verzích před PowerShellem 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", ...
Rutina Get-Process získá objekty Process. Objekty procesu se odesílají do kanálu do rutiny Export-Csv.
Export-Csv převede objekty procesu na řadu řetězců CSV. Parametr Cesta určuje, že soubor Processes.csv je uložen v aktuálním adresáři.
IncludeTypeInformation obsahuje hlavičku informací #TYPE ve výstupu CSV. Rutina Get-Content používá parametr Path k zobrazení souboru umístěného v aktuálním adresáři.
Příklad 6: Export a připojení objektů do souboru CSV
Tento příklad popisuje, jak exportovat objekty do souboru CSV a pomocí parametru Připojit přidat objekty do existujícího souboru.
$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"
Rutina Get-Service získá objekty služby. Parametr DisplayName vrací služby, které obsahují slovo Aplikace. Objekty služby se odesílají do kanálu do rutiny Select-Object.
Select-Object používá parametr vlastnosti k určení vlastností DisplayName a Status. Proměnná $AppService ukládá objekty.
Objekty $AppService se odesílají do Export-Csv rutiny.
Export-Csv převede objekty služby na řadu řetězců CSV. Parametr Cesta určuje, že soubor Services.csv je uložen v aktuálním adresáři. Parametr NoTypeInformation odebere hlavičku informací #TYPE z výstupu CSV a není vyžadována v PowerShellu 6. Rutina Get-Content používá parametr Path k zobrazení souboru umístěného v aktuálním adresáři.
Rutiny Get-Service a Select-Object se opakují pro služby, které obsahují slovo Windows. Proměnná $WinService ukládá objekty služby. Rutina Export-Csv používá parametr Append k určení, že se objekty $WinService přidají do existujícího souboru Services.csv. Rutina Get-Content se opakuje, aby se zobrazil aktualizovaný soubor, který obsahuje připojená data.
Příklad 7: Formátování rutiny v kanálu vytváří neočekávané výsledky
Tento příklad ukazuje, proč není důležité v kanálu používat rutinu formátu. Při přijetí neočekávaného výstupu vyřešte syntaxi kanálu.
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",,,,,
Rutina Get-Date získá objekt DateTime. Objekt se odešle do kanálu do rutiny Select-Object.
Select-Object pomocí parametru Vlastnost vybere podmnožinu vlastností objektu. Objekt se odešle do kanálu do rutiny Export-Csv.
Export-Csv převede objekt do formátu CSV. Parametr Cesta určuje, že soubor DateTime.csv je uložen v aktuálním adresáři. Parametr NoTypeInformation odebere hlavičku informací #TYPE z výstupu CSV a není vyžadována v PowerShellu 6. Rutina Get-Content používá parametr Path k zobrazení souboru CSV umístěného v aktuálním adresáři.
Když se rutina Format-Table použije v kanálu k výběru vlastností, obdrží se neočekávané výsledky.
Format-Table odesílá objekty formátu tabulky do kanálu do rutiny Export-Csv místo objektu DateTime.
Export-Csv převede objekty formátu tabulky na řadu řetězců CSV. Rutina Get-Content zobrazí soubor CSV, který obsahuje objekty formátu tabulky.
Příklad 8: Použití parametru Force k přepsání souborů jen pro čtení
Tento příklad vytvoří prázdný soubor jen pro čtení a použije k aktualizaci souboru parametr Force.
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"; ...
Rutina New-Item používá parametry Path a ItemType k vytvoření souboru ReadOnly.csv v aktuálním adresáři. Rutina Set-ItemProperty používá parametry Name a Value k změně vlastnosti IsReadOnly souboru na true. Rutina Get-Process získá objekty Process. Objekty procesu se odesílají do kanálu do rutiny Export-Csv.
Export-Csv převede objekty procesu na řadu řetězců CSV. Parametr Cesta určuje, že soubor ReadOnly.csv je uložen v aktuálním adresáři. Parametr NoTypeInformation odebere hlavičku informací #TYPE z výstupu CSV a není vyžadována v PowerShellu 6. Výstup ukazuje, že soubor není zapsán, protože přístup byl odepřen.
Do rutiny se přidá parametr Export-Csv, který export do souboru zapíše. Rutina Get-Content používá parametr Path k zobrazení souboru umístěného v aktuálním adresáři.
Příklad 9: Použití parametru Force s připojením
Tento příklad ukazuje, jak použít parametry Force a Append. Při kombinování těchto parametrů lze neshodované vlastnosti objektu zapsat do souboru CSV.
$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
Výraz vytvoří PSCustomObject s vlastnostmi Name a Version. Hodnoty jsou uloženy v proměnné $Content. Proměnná $Content se odešle do kanálu do rutiny Export-Csv.
Export-Csv používá parametr Path a uloží soubor ParmFile.csv do aktuálního adresáře. Parametr NoTypeInformation odebere hlavičku informací #TYPE z výstupu CSV a není vyžadována v PowerShellu 6.
Jiný výraz vytvoří PSCustomObject s vlastnostmi Name a Edition. Hodnoty jsou uloženy v proměnné $AdditionalContent. Proměnná $AdditionalContent se odešle do kanálu do rutiny Export-Csv. Parametr Append slouží k přidání dat do souboru. Připojení selže, protože došlo k neshodě názvů vlastností mezi verze a Edition.
Rutina Export-CsvVynutit parametr slouží k vynucení exportu pro zápis do souboru. Vlastnost Edition se zahodí. Rutina Import-Csv používá parametr Path k zobrazení souboru umístěného v aktuálním adresáři.
Příklad 10: Export do CSV s uvozovkami kolem dvou sloupců
Tento příklad převede objekt DateTime na řetězec 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
Příklad 11: Export do csv s uvozovkami pouze v případě potřeby
Tento příklad převede objekt DateTime na řetězec 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
Příklad 12: Převod hashovatelných tabulek na CSV
Když v PowerShellu 7.2 a novějším exportujete hashtables do sdíleného svazku clusteru, klíče první hashovatelné tabulky se serializují a použijí se jako hlavičky ve výstupu souboru CSV.
$person1 = @{
Name = 'John Smith'
Number = 1
}
$person2 = @{
Name = 'Jane Smith'
Number = 2
}
$allPeople = $person1, $person2
$allPeople | Export-Csv -Path .\People.csv
Get-Content -Path .\People.csv
"Name","Number"
"John Smith","1"
"Jane Smith","2"
Příklad 13: Převod hashovatelných tabulek na CSV s dalšími vlastnostmi
Když v PowerShellu 7.2 a novějším exportujete hashtable s dalšími vlastnostmi přidanými s Add-Member nebo Select-Object další vlastnosti se také přidají jako záhlaví v souboru CSV.
$allPeople | Add-Member -Name ExtraProp -Value 42 -MemberType NoteProperty
$allPeople | Export-Csv -Path .\People.csv
Get-Content -Path .\People.csv
"Name","Number","ExtraProp"
"John Smith","1","42"
"Jane Smith","2","42"
Každá hashtable má vlastnost s názvem ExtraProp přidaná Add-Member a exportovaná do souboru CSV. Uvidíte, ExtraProp je teď hlavička ve výstupu souboru CSV.
Pokud přidaná vlastnost má stejný název jako klíč z hashtable, má klíč přednost a exportuje se do souboru CSV pouze klíč.
Parametry
-Append
Tento parametr použijte, aby Export-Csv přidal výstup CSV na konec zadaného souboru. Bez tohoto parametru Export-Csv nahradí obsah souboru bez upozornění.
Tento parametr byl představen ve Windows PowerShellu 3.0.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Confirm
Před spuštěním cmdletu vás vyzve k potvrzení.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | viz |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Delimiter
Určuje oddělovač pro oddělení hodnot vlastností. Výchozí hodnota je čárka (,). Zadejte znak, například dvojtečku (:). Chcete-li zadat středník (;), uzavřete ho do uvozovek.
Vlastnosti parametru
| Typ: | Char |
| Default value: | comma (,) |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
Delimiter
| Position: | 1 |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Encoding
Určuje kódování exportovaného souboru CSV. Výchozí hodnota je utf8NoBOM.
Přijatelné hodnoty pro tento parametr jsou následující:
-
ascii: Používá kódování znakové sady ASCII (7bitová). -
ansi: Používá kódování pro znakovou stránku ANSI aktuální kultury. Tato možnost byla přidána. -
bigendianunicode: Kóduje ve formátu UTF-16 s použitím pořadí bajtů big-endian. -
bigendianutf32: Kóduje ve formátu UTF-32 s použitím big-endian bajtového pořadí. -
oem: Používá výchozí kódování pro MS-DOS a konzolové programy. -
unicode: Kóduje ve formátu UTF-16 pomocí pořadí malých bajtů. -
utf7: Kóduje ve formátu UTF-7. -
utf8: Kóduje ve formátu UTF-8. -
utf8BOM: Kódování ve formátu UTF-8 pomocí značky pořadí bajtů (BOM) -
utf8NoBOM: Kódování ve formátu UTF-8 bez značky pořadí bajtů (BOM) -
utf32: Kóduje ve formátu UTF-32.
Počínaje PowerShellem 6.2 umožňuje parametr Encoding také číselné ID registrovaných znakových stránek (například -Encoding 1251) nebo názvy řetězců registrovaných znakových stránek (například -Encoding "windows-1251"). Další informace naleznete v dokumentaci .NET pro Encoding.CodePage.
Od verze PowerShell 7.4 můžete použít hodnotu Ansi parametru Encoding a předat číselné ID pro znakovou stránku ANSI aktuální kultury, aniž by bylo nutné ji zadávat ručně.
Poznámka:
UTF-7* se už nedoporučuje používat. Od PowerShellu 7.1 se zapíše upozornění, pokud pro parametr utf7 zadáte .
Vlastnosti parametru
| Typ: | Encoding |
| Default value: | UTF8NoBOM |
| Přípustné hodnoty: | ASCII, BigEndianUnicode, BigEndianUTF32, OEM, Unicode, UTF7, UTF8, UTF8BOM, UTF8NoBOM, UTF32 |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Force
Tento parametr umožňuje Export-Csv přepsat soubory atributem Jen pro čtení.
Při kombinaci parametrů Force a Append lze do souboru CSV zapsat objekty, které obsahují neodpovídající vlastnosti. Do souboru se zapisují pouze vlastnosti, které odpovídají. Neodpovídající vlastnosti se zahodí.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-IncludeTypeInformation
Pokud je tento parametr použit první řádek výstupu CSV obsahuje #TYPE následovaný plně kvalifikovaným názvem typu objektu. Například: #TYPE System.Diagnostics.Process.
Tento parametr byl představen v PowerShellu 6.0.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | ITI |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-InputObject
Určuje objekty, které se mají exportovat jako řetězce CSV. Zadejte proměnnou obsahující objekty nebo zadejte příkaz nebo výraz, který objekty získá. Objekty lze také pipetovat do Export-Csv.
Vlastnosti parametru
| Typ: | PSObject |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | True |
| Hodnota z kanálu: | True |
| Hodnota z kanálu podle názvu vlastnosti: | True |
| Hodnota ze zbývajících argumentů: | False |
-LiteralPath
Určuje cestu k výstupnímu souboru CSV. Na rozdíl od Pathse hodnota parametru LiteralPath používá přesně tak, jak je zadán. Žádný znak není interpretován jako zástupný znak. Pokud cesta obsahuje řídicí znaky, použijte jednoduché uvozovky. Jednoduché uvozovky říkají PowerShellu, aby žádné znaky neinterpretoval jako únikové sekvence.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | PSPath, PO |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-NoClobber
Tento parametr použijte, aby Export-Csv nepřepsal existující soubor. Ve výchozím nastavení, pokud soubor existuje v zadané cestě, Export-Csv přepíše soubor bez upozornění.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | NoOverwrite |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-NoHeader
Při použití tohoto parametru rutina do výstupu nezapíše řádek záhlaví obsahující názvy sloupců.
Tento parametr byl přidán v PowerShellu 7.4.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-NoTypeInformation
Odebere ze výstupu hlavičku #TYPE informací. Tento parametr se stal výchozím nastavením v PowerShellu 6.0 a je součástí zpětné kompatibility.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | NTI |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Path
Povinný parametr, který určuje umístění pro uložení výstupního souboru CSV.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | 0 |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-QuoteFields
Určuje názvy sloupců, které mají být citovány. Při použití tohoto parametru se uvozují pouze zadané sloupce. Tento parametr byl přidán v PowerShellu 7.0.
Vlastnosti parametru
| Typ: | String[] |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | QF |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-UseCulture
Použije oddělovač seznamu pro aktuální kulturu jako oddělovač položek. K vyhledání oddělovače seznamu pro kulturu použijte následující příkaz: (Get-Culture).TextInfo.ListSeparator.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
UseCulture
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-UseQuotes
Určuje, kdy se v souborech CSV použijí uvozovky. Možné hodnoty:
- Nikdy - nic neuvozujte
- Vždy – uvozovek vše (výchozí chování)
- AsNeeded – pouze pole uvozovek, která obsahují znak oddělovače, dvojité uvozovky nebo znak nového řádku
Tento parametr byl přidán v PowerShellu 7.0.
Vlastnosti parametru
| Typ: | Microsoft.PowerShell.Commands.BaseCsvWritingCommand+QuoteKind |
| Default value: | Always |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | UQ |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-WhatIf
Zabrání zpracování nebo provedení změn rutiny. Výstup ukazuje, co by se stalo, kdyby byla rutina spuštěna.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | False |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | Wi |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
CommonParameters
Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.
Vstupy
PSObject
Do této rutiny můžete převést libovolný objekt s adaptérem ETS (Extended Type System).
Výstupy
None
Tento cmdlet nevrátí žádný výstup.
Poznámky
PowerShell obsahuje následující aliasy pro Export-Csv:
- Všechny platformy:
epcsv
Rutina Export-Csv převede objekty, které odešlete, na řadu řetězců CSV a uloží je do zadaného textového souboru. Pomocí Export-Csv -IncludeTypeInformation můžete ukládat objekty do souboru CSV a pak pomocí rutiny Import-Csv vytvářet objekty z textu v souboru CSV.
V souboru CSV je každý objekt reprezentován seznamem vlastností oddělených znakem hodnot objektu. Hodnoty vlastností jsou převedeny na řetězce pomocí ToString() metoda. Řetězce jsou reprezentovány názvem hodnoty vlastnosti.
Export-Csv -IncludeTypeInformation neexportuje metody objektu.
Řetězce CSV jsou výstupem následujícím způsobem:
- Pokud se používá IncludeTypeInformation, první řetězec obsahuje hlavičku #TYPE informací následovanou plně kvalifikovaným názvem typu objektu. Například #TYPE System.Diagnostics.Process.
- Pokud IncludeTypeInformation není použit první řetězec obsahuje záhlaví sloupců. Záhlaví obsahují názvy vlastností prvního objektu jako seznam oddělený znakem.
- Zbývající řetězce obsahují seznamy vlastností jednotlivých objektů oddělené znakem.
Počínaje PowerShellem 6.0 výchozí chování Export-Csv není zahrnout informace #TYPE do souboru CSV a NoTypeInformation implicitně.
IncludeTypeInformation lze použít k zahrnutí informací #TYPE a emulaci výchozího chování Export-Csv před PowerShellem 6.0.
Když do Export-Csvodešlete více objektů, Export-Csv soubor uspořádá na základě vlastností prvního objektu, který odešlete. Pokud zbývající objekty nemají jednu ze zadaných vlastností, hodnota vlastnosti tohoto objektu je null, jak je reprezentováno dvěma po sobě jdoucími čárkami. Pokud zbývající objekty mají další vlastnosti, tyto hodnoty vlastností nejsou zahrnuty do souboru.
Rutinu Import-Csv můžete použít k opětovnému vytvoření objektů z řetězců CSV v souborech. Výsledné objekty jsou verze CSV původních objektů, které se skládají z řetězcových reprezentací hodnot vlastností a žádné metody.
Rutiny ConvertTo-Csv a ConvertFrom-Csv převádějí objekty na řetězce CSV a z řetězců CSV.
Export-Csv je stejný jako ConvertTo-Csvs tím rozdílem, že ukládá řetězce CSV do souboru.