Export-Csv
Konverterar objekt till en serie teckenavgränsade värdesträngar (CSV) och sparar strängarna i en fil.
Syntax
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>]
Description
Cmdleten Export-CSV
skapar en CSV-fil med de objekt som du skickar. Varje objekt är en rad som innehåller en teckenavgränsad lista över objektets egenskapsvärden. Du kan använda cmdleten Export-CSV
för att skapa kalkylblad och dela data med program som accepterar CSV-filer som indata.
Formatera inte objekt innan du skickar dem till cmdleten Export-CSV
. Om Export-CSV
tar emot formaterade objekt innehåller CSV-filen formategenskaperna i stället för objektegenskaperna. Om du bara vill exportera markerade egenskaper för ett objekt använder du cmdleten Select-Object
.
Exempel
Exempel 1: Exportera processegenskaper till en CSV-fil
Det här exemplet väljer Bearbeta objekt med specifika egenskaper och exporterar objekten till en CSV-fil.
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
Cmdleten Get-Process
hämtar processobjekten . Parametern Namn filtrerar utdata så att de endast innehåller WmiPrvSE-processobjekten. Processobjekten skickas ned i pipelinen till cmdleten Select-Object
. Select-Object
använder parametern Egenskap för att välja en delmängd av processobjektegenskaper. Processobjekten skickas ned i pipelinen till cmdleten Export-Csv
. Export-Csv
konverterar processobjekten till en serie CSV-strängar. Parametern Path anger att WmiData.csv
filen sparas i den aktuella katalogen. Parametern NoTypeInformation tar bort #TYPE informationshuvudet från CSV-utdata och krävs inte i PowerShell 6. Cmdleten Import-Csv
använder parametern Sökväg för att visa filen som finns i den aktuella katalogen.
Exempel 2: Exportera processer till en kommaavgränsad fil
Det här exemplet hämtar processobjekt och exporterar objekten till en CSV-fil.
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", ...
Cmdleten Get-Process
hämtar processobjekt . Processobjekten skickas ned i pipelinen till cmdleten Export-Csv
. Export-Csv
konverterar processobjekten till en serie CSV-strängar. Parametern Path anger att Processes.csv
filen sparas i den aktuella katalogen. Parametern NoTypeInformation tar bort #TYPE informationshuvudet från CSV-utdata och krävs inte i PowerShell 6. Cmdleten Get-Content
använder parametern Sökväg för att visa filen som finns i den aktuella katalogen.
Exempel 3: Exportera processer till en semikolonavgränsad fil
Det här exemplet hämtar processobjekt och exporterar objekten till en fil med semikolon avgränsare.
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"; ...
Cmdleten Get-Process
hämtar processobjekt . Processobjekten skickas ned i pipelinen till cmdleten Export-Csv
. Export-Csv
konverterar processobjekten till en serie CSV-strängar. Parametern Path anger att Processes.csv
filen sparas i den aktuella katalogen. Parametern Avgränsare anger ett semikolon som avgränsar strängvärdena. Parametern NoTypeInformation tar bort #TYPE informationshuvudet från CSV-utdata och krävs inte i PowerShell 6. Cmdleten Get-Content
använder parametern Sökväg för att visa filen som finns i den aktuella katalogen.
Exempel 4: Exportera processer med den aktuella kulturens listavgränsare
Det här exemplet hämtar Process-objekt och exporterar objekten till en fil. Avgränsaren är den aktuella kulturens listavgränsare.
(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", ...
Cmdleten Get-Culture
använder de kapslade egenskaperna TextInfo och ListSeparator och visar den aktuella kulturens standardlistavgränsare. Cmdleten Get-Process
hämtar processobjekt . Processobjekten skickas ned i pipelinen till cmdleten Export-Csv
. Export-Csv
konverterar processobjekten till en serie CSV-strängar. Parametern Path anger att Processes.csv
filen sparas i den aktuella katalogen. Parametern UseCulture använder den aktuella kulturens standardlistavgränsare som avgränsare. Parametern NoTypeInformation tar bort #TYPE informationshuvudet från CSV-utdata och krävs inte i PowerShell 6. Cmdleten Get-Content
använder parametern Sökväg för att visa filen som finns i den aktuella katalogen.
Exempel 5: Exportera processer med typinformation
Det här exemplet förklarar hur du inkluderar #TYPE rubrikinformation i en CSV-fil. #TYPE-huvudet är standardvärdet i versioner före 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", ...
Cmdleten Get-Process
hämtar processobjekt . Processobjekten skickas ned i pipelinen till cmdleten Export-Csv
. Export-Csv
konverterar processobjekten till en serie CSV-strängar. Parametern Path anger att Processes.csv
filen sparas i den aktuella katalogen. IncludeTypeInformation innehåller #TYPE informationshuvudet i CSV-utdata. Cmdleten Get-Content
använder parametern Sökväg för att visa filen som finns i den aktuella katalogen.
Exempel 6: Exportera och lägga till objekt i en CSV-fil
I det här exemplet beskrivs hur du exporterar objekt till en CSV-fil och använder parametern Lägg till för att lägga till objekt i en befintlig fil.
$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"
Cmdleten Get-Service
hämtar tjänstobjekt. Parametern DisplayName returnerar tjänster som innehåller ordet Program. Tjänstobjekten skickas ned i pipelinen till cmdleten Select-Object
. Select-Object
använder egenskapsparametern för att ange egenskaperna DisplayName och Status. Variabeln $AppService
lagrar objekten.
Objekten $AppService
skickas ned i pipelinen till cmdleten Export-Csv
. Export-Csv
konverterar tjänstobjekten till en serie CSV-strängar. Parametern Path anger att Services.csv
filen sparas i den aktuella katalogen. Parametern NoTypeInformation tar bort #TYPE informationshuvudet från CSV-utdata och krävs inte i PowerShell 6. Cmdleten Get-Content
använder parametern Sökväg för att visa filen som finns i den aktuella katalogen.
Get-Service
Cmdletarna och Select-Object
upprepas för tjänster som innehåller ordet Windows. Variabeln $WinService
lagrar tjänstobjekten. Cmdleten Export-Csv
använder parametern Lägg till för att ange att objekten $WinService
läggs till i den befintliga Services.csv
filen. Cmdleten Get-Content
upprepas för att visa den uppdaterade filen som innehåller de bifogade data.
Exempel 7: Formatera cmdlet i en pipeline skapar oväntade resultat
Det här exemplet visar varför det är viktigt att inte använda en format-cmdlet i en pipeline. När oväntade utdata tas emot felsöker du pipelinesyntaxen.
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",,,,,
Cmdleten Get-Date
hämtar DateTime-objektet . Objektet skickas ned pipelinen till cmdleten Select-Object
. Select-Object
använder parametern Egenskap för att välja en delmängd av objektegenskaper. Objektet skickas ned pipelinen till cmdleten Export-Csv
. Export-Csv
konverterar objektet till ett CSV-format. Parametern Path anger att DateTime.csv
filen sparas i den aktuella katalogen. Parametern NoTypeInformation tar bort #TYPE informationshuvudet från CSV-utdata och krävs inte i PowerShell 6. Cmdleten Get-Content
använder parametern Path för att visa CSV-filen som finns i den aktuella katalogen.
När cmdleten Format-Table
används i pipelinen för att välja egenskaper tas oväntade resultat emot. Format-Table
skickar tabellformatobjekt ned pipelinen till cmdleten Export-Csv
i stället för DateTime-objektet . Export-Csv
konverterar tabellformatobjekten till en serie CSV-strängar. Cmdleten Get-Content
visar CSV-filen som innehåller tabellformatobjekten.
Exempel 8: Använda force-parametern för att skriva över skrivskyddade filer
Det här exemplet skapar en tom, skrivskyddad fil och använder parametern Force för att uppdatera filen.
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"; ...
Cmdleten New-Item
använder parametrarna Path och ItemType för att skapa ReadOnly.csv
filen i den aktuella katalogen. Cmdleten Set-ItemProperty
använder parametrarna Namn och Värde för att ändra filens IsReadOnly-egenskap till true. Cmdleten Get-Process
hämtar processobjekt . Processobjekten skickas ned i pipelinen till cmdleten Export-Csv
.
Export-Csv
konverterar processobjekten till en serie CSV-strängar. Parametern Path anger att ReadOnly.csv
filen sparas i den aktuella katalogen. Parametern NoTypeInformation tar bort #TYPE informationshuvudet från CSV-utdata och krävs inte i PowerShell 6. Utdata visar att filen inte är skriven eftersom åtkomst nekas.
Force-parametern läggs till i cmdleten Export-Csv
för att tvinga exporten att skriva till filen. Cmdleten Get-Content
använder parametern Sökväg för att visa filen som finns i den aktuella katalogen.
Exempel 9: Använda force-parametern med Lägg till
Det här exemplet visar hur du använder parametrarna Force och Append . När dessa parametrar kombineras kan objektegenskaper som inte matchar skrivas till en CSV-fil.
$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
Ett uttryck skapar PSCustomObject med egenskaperna Namn och Version . Värdena lagras i variabeln $Content
. Variabeln $Content
skickas nedåt i pipelinen till cmdleten Export-Csv
. Export-Csv
använder parametern Path och sparar ParmFile.csv
filen i den aktuella katalogen. Parametern NoTypeInformation tar bort #TYPE informationshuvudet från CSV-utdata och krävs inte i PowerShell 6.
Ett annat uttryck skapar ett PSCustomObject med egenskaperna Name och Edition . Värdena lagras i variabeln $AdditionalContent
. Variabeln $AdditionalContent
skickas nedåt i pipelinen till cmdleten Export-Csv
. Parametern Lägg till används för att lägga till data i filen. Tillägget misslyckas eftersom det finns ett matchningsfel för egenskapsnamn mellan version och utgåva.
Parametern Export-Csv
cmdlet Force används för att tvinga exporten att skriva till filen. Egenskapen Edition tas bort. Cmdleten Import-Csv
använder parametern Path för att visa filen som finns i den aktuella katalogen.
Exempel 10: Exportera till CSV med citattecken runt två kolumner
I det här exemplet konverteras ett DateTime-objekt till en CSV-sträng.
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
Exempel 11: Exportera till CSV med citattecken endast när det behövs
I det här exemplet konverteras ett DateTime-objekt till en CSV-sträng.
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
Exempel 12: Konvertera hashtabeller till CSV
När du exporterar hashtabeller till CSV i PowerShell 7.2 och senare serialiseras nycklarna för den första hashtabellen och används som rubriker i csv-filens utdata.
$person1 = @{
Name = 'John Smith'
Number = 1
}
$person2 = @{
Name = 'Jane Smith'
Number = 1
}
$allPeople = $person1, $person2
$allPeople | Export-Csv -Path .\People.csv
Get-Content -Path .\People.csv
"Name","Number"
"John Smith","1"
"Jane Smith","2"
Exempel 13: Konvertera hashtabeller till CSV med ytterligare egenskaper
I PowerShell 7.2 och senare, när du exporterar en hashtabell som har ytterligare egenskaper som lagts till med Add-Member
eller Select-Object
de ytterligare egenskaperna också läggs till som en rubrik i CSV-filen.
$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"
Varje hashtabell har en egenskap med namnet som läggs ExtraProp
till av Add-Member
och sedan exporteras till CSV. Du kan nu se ExtraProp
att är en rubrik i CSV-filens utdata.
Om en tillagd egenskap har samma namn som en nyckel från hashtabellen har nyckeln företräde och endast nyckeln exporteras till CSV.
Parametrar
-Append
Använd den här parametern så att Export-CSV
CSV-utdata läggs till i slutet av den angivna filen. Utan den här parametern Export-CSV
ersätter filinnehållet utan varning.
Den här parametern introducerades i Windows PowerShell 3.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Uppmanar dig att bekräfta innan du kör cmdleten.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Delimiter
Anger en avgränsare för att avgränsa egenskapsvärdena. Standardvärdet är ett kommatecken (,
). Ange ett tecken, till exempel ett kolon (:
). Om du vill ange ett semikolon (;
) omger du det inom citattecken.
Type: | Char |
Position: | 1 |
Default value: | comma (,) |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Encoding
Anger kodningen för den exporterade CSV-filen. Standardvärdet är utf8NoBOM
.
Godkända värden för den här parametern är följande:
ascii
: Använder kodningen för ASCII-teckenuppsättningen (7-bitars).bigendianunicode
: Kodar i UTF-16-format med hjälp av den stora byteordningen.bigendianutf32
: Kodar i UTF-32-format med hjälp av den stora byteordningen.oem
: Använder standardkodning för MS-DOS och konsolprogram.unicode
: Kodar i UTF-16-format med den little-endianska byteordningen.utf7
: Kodar i UTF-7-format.utf8
: Kodar i UTF-8-format.utf8BOM
: Kodar i UTF-8-format med BOM (Byte Order Mark)utf8NoBOM
: Kodar i UTF-8-format utan bom (Byte Order Mark)utf32
: Kodar i UTF-32-format.
Från och med PowerShell 6.2 tillåter kodningsparametern även numeriska ID:er för registrerade kodsidor (till exempel -Encoding 1251
) eller strängnamn för registrerade kodsidor (till exempel -Encoding "windows-1251"
). Mer information finns i .NET-dokumentationen för Encoding.CodePage.
Anteckning
UTF-7* rekommenderas inte längre att använda. Från och med PowerShell 7.1 skrivs en varning om du anger utf7
för kodningsparametern .
Type: | Encoding |
Accepted values: | ASCII, BigEndianUnicode, BigEndianUTF32, OEM, Unicode, UTF7, UTF8, UTF8BOM, UTF8NoBOM, UTF32 |
Position: | Named |
Default value: | UTF8NoBOM |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Med den här parametern kan Export-Csv
du skriva över filer med attributet Skrivskyddad .
När force- och tilläggsparametrar kombineras kan objekt som innehåller felmatchade egenskaper skrivas till en CSV-fil. Endast de egenskaper som matchar skrivs till filen. De felmatchade egenskaperna ignoreras.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IncludeTypeInformation
När den här parametern används innehåller #TYPE
den första raden i CSV-utdata följt av det fullständigt kvalificerade namnet på objekttypen. Till exempel #TYPE System.Diagnostics.Process
.
Den här parametern introducerades i PowerShell 6.0.
Type: | SwitchParameter |
Aliases: | ITI |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Anger vilka objekt som ska exporteras som CSV-strängar. Ange en variabel som innehåller objekten eller skriv ett kommando eller uttryck som hämtar objekten. Du kan också skicka objekt till Export-CSV
.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-LiteralPath
Anger sökvägen till CSV-utdatafilen. Till skillnad från Path används värdet för parametern LiteralPath exakt som det skrivs. Inga tecken tolkas som jokertecken. Om sökvägen innehåller escape-tecken använder du enkla citattecken. Enkla citattecken talar om för PowerShell att inga tecken ska tolkas som escape-sekvenser.
Type: | String |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoClobber
Använd den här parametern så att Export-CSV
inte en befintlig fil skrivs över. Om filen finns i den angivna sökvägen Export-CSV
skriver du som standard över filen utan varning.
Type: | SwitchParameter |
Aliases: | NoOverwrite |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoTypeInformation
Tar bort informationshuvudet #TYPE
från utdata. Den här parametern blev standard i PowerShell 6.0 och ingår för bakåtkompatibilitet.
Type: | SwitchParameter |
Aliases: | NTI |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
En obligatorisk parameter som anger platsen där CSV-utdatafilen ska sparas.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-QuoteFields
Anger namnen på de kolumner som ska citeras. När den här parametern används citeras endast de angivna kolumnerna. Den här parametern lades till i PowerShell 7.0.
Type: | String[] |
Aliases: | QF |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseCulture
Använder listavgränsaren för den aktuella kulturen som objektavgränsare. Använd följande kommando för att hitta listavgränsaren för en kultur: (Get-Culture).TextInfo.ListSeparator
.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseQuotes
Anger när citattecken används i CSV-filerna. Möjliga värden:
- Aldrig - citera ingenting
- Always – citera allt (standardbeteende)
- AsNeeded – endast citatfält som innehåller avgränsartecken, dubbel citattecken eller nystreck
Den här parametern lades till i PowerShell 7.0.
Type: | Microsoft.PowerShell.Commands.BaseCsvWritingCommand+QuoteKind |
Aliases: | UQ |
Position: | Named |
Default value: | Always |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Förhindrar att cmdleten bearbetas eller gör ändringar. Utdata visar vad som skulle hända om cmdleten kördes.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Indata
Du kan skicka valfritt objekt med en ETS-adapter (Extended Type System) till denna cmdlet.
Utdata
None
Denna cmdlet returnerar inga utdata.
Kommentarer
PowerShell innehåller följande alias för Export-Csv
:
- Alla plattformar:
epcsv
Cmdleten Export-CSV
konverterar de objekt som du skickar till en serie CSV-strängar och sparar dem i den angivna textfilen. Du kan använda Export-CSV -IncludeTypeInformation
för att spara objekt i en CSV-fil och sedan använda cmdleten Import-Csv
för att skapa objekt från texten i CSV-filen.
I CSV-filen representeras varje objekt av en teckenavgränsad lista över objektets egenskapsvärden. Egenskapsvärdena konverteras till strängar med hjälp av metoden ToString(). Strängarna representeras av egenskapsvärdets namn. Export-CSV -IncludeTypeInformation
exporterar inte -metoderna för objektet.
CSV-strängarna matas ut på följande sätt:
- Om IncludeTypeInformation används innehåller den första strängen #TYPE informationsrubrik följt av objekttypens fullständigt kvalificerade namn. Till exempel #TYPE System.Diagnostics.Process.
- Om IncludeTypeInformation inte används innehåller den första strängen kolumnrubrikerna. Rubrikerna innehåller det första objektets egenskapsnamn som en teckenavgränsad lista.
- De återstående strängarna innehåller teckenavgränsade listor över varje objekts egenskapsvärden.
Från och med PowerShell 6.0 är standardbeteendet Export-CSV
att inte inkludera #TYPE information i CSV och NoTypeInformation är underförstådd. IncludeTypeInformation kan användas för att inkludera #TYPE information och emulera standardbeteendet Export-CSV
för före PowerShell 6.0.
När du skickar flera objekt till Export-CSV
ordnar Export-CSV
du filen baserat på egenskaperna för det första objektet som du skickar. Om de återstående objekten inte har någon av de angivna egenskaperna är egenskapsvärdet för det objektet null, vilket representeras av två kommatecken i följd. Om de återstående objekten har ytterligare egenskaper inkluderas inte dessa egenskapsvärden i filen.
Du kan använda cmdleten Import-Csv
för att återskapa objekt från CSV-strängarna i filerna. De resulterande objekten är CSV-versioner av de ursprungliga objekten som består av strängrepresentationer av egenskapsvärdena och inga metoder.
ConvertTo-Csv
Cmdletarna och ConvertFrom-Csv
konverterar objekt till CSV-strängar och från CSV-strängar. Export-CSV
är samma som ConvertTo-CSV
, förutom att den sparar CSV-strängarna i en fil.