Export-Csv
Mengonversi objek menjadi serangkaian string nilai yang dipisahkan karakter (CSV) dan menyimpan string ke file.
Sintaks
Export-Csv
-InputObject <PSObject>
[[-Path] <String>]
[-LiteralPath <String>]
[-Force]
[-NoClobber]
[-Encoding <Encoding>]
[-Append]
[[-Delimiter] <Char>]
[-IncludeTypeInformation]
[-NoTypeInformation]
[-QuoteFields <String[]>]
[-UseQuotes <QuoteKind>]
[-NoHeader]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Export-Csv
-InputObject <PSObject>
[[-Path] <String>]
[-LiteralPath <String>]
[-Force]
[-NoClobber]
[-Encoding <Encoding>]
[-Append]
[-UseCulture]
[-IncludeTypeInformation]
[-NoTypeInformation]
[-QuoteFields <String[]>]
[-UseQuotes <QuoteKind>]
[-NoHeader]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Deskripsi
cmdlet Export-Csv
membuat file CSV objek yang Anda kirimkan. Setiap objek adalah baris yang menyertakan daftar nilai properti objek yang dipisahkan karakter. Anda dapat menggunakan cmdlet Export-Csv
untuk membuat spreadsheet dan berbagi data dengan program yang menerima file CSV sebagai input.
Jangan format objek sebelum mengirimkannya ke cmdlet Export-Csv
. Jika Export-Csv
menerima objek berformat, file CSV berisi properti format daripada properti objek. Untuk mengekspor hanya properti objek yang dipilih, gunakan cmdlet Select-Object
.
Contoh
Contoh 1: Mengekspor properti proses ke file CSV
Contoh ini memilih Memproses objek dengan properti tertentu, mengekspor objek ke file 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
Cmdlet Get-Process
mendapatkan objek Proses. Parameter Nama memfilter output untuk hanya menyertakan objek proses WmiPrvSE. Objek proses dikirimkan alur ke cmdlet Select-Object
.
Select-Object
menggunakan parameter Properti untuk memilih subset properti objek proses. Objek proses dikirimkan alur ke cmdlet Export-Csv
.
Export-Csv
mengonversi objek proses menjadi serangkaian string CSV. Parameter Jalur menentukan bahwa file WmiData.csv
disimpan di direktori saat ini. Parameter NoTypeInformation menghapus header informasi #TYPE dari output CSV dan tidak diperlukan di PowerShell 6. Cmdlet Import-Csv
menggunakan parameter Jalur untuk menampilkan file yang terletak di direktori saat ini.
Contoh 2: Mengekspor proses ke file yang dibatasi koma
Contoh ini mendapatkan Memproses objek dan mengekspor objek ke file 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", ...
Cmdlet Get-Process
mendapatkan objek Proses. Objek proses dikirimkan alur ke cmdlet Export-Csv
.
Export-Csv
mengonversi objek proses menjadi serangkaian string CSV. Parameter Jalur menentukan bahwa file Processes.csv
disimpan di direktori saat ini. Parameter NoTypeInformation menghapus header informasi #TYPE dari output CSV dan tidak diperlukan di PowerShell 6. Cmdlet Get-Content
menggunakan parameter Jalur untuk menampilkan file yang terletak di direktori saat ini.
Contoh 3: Mengekspor proses ke file yang dibatasi titik koma
Contoh ini mendapatkan Memproses objek dan mengekspor objek ke file dengan pemisah titik koma.
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"; ...
Cmdlet Get-Process
mendapatkan objek Proses. Objek proses dikirimkan alur ke cmdlet Export-Csv
.
Export-Csv
mengonversi objek proses menjadi serangkaian string CSV. Parameter Jalur menentukan bahwa file Processes.csv
disimpan di direktori saat ini. Parameter pemisah menentukan titik koma untuk memisahkan nilai string. Parameter NoTypeInformation menghapus header informasi #TYPE dari output CSV dan tidak diperlukan di PowerShell 6. Cmdlet Get-Content
menggunakan parameter Jalur untuk menampilkan file yang terletak di direktori saat ini.
Contoh 4: Proses ekspor menggunakan pemisah daftar budaya saat ini
Contoh ini mendapatkan Memproses objek dan mengekspor objek ke file. Pemisah adalah pemisah daftar budaya saat ini.
(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", ...
Cmdlet Get-Culture
menggunakan properti berlapis TextInfo dan ListSeparator dan menampilkan pemisah daftar default budaya saat ini. Cmdlet Get-Process
mendapatkan objek Proses. Objek proses dikirimkan alur ke cmdlet Export-Csv
.
Export-Csv
mengonversi objek proses menjadi serangkaian string CSV. Parameter Jalur menentukan bahwa file Processes.csv
disimpan di direktori saat ini. Parameter UseCulture menggunakan pemisah daftar default budaya saat ini sebagai pemisah. Parameter NoTypeInformation menghapus header informasi #TYPE dari output CSV dan tidak diperlukan di PowerShell 6.
Cmdlet Get-Content
menggunakan parameter Jalur untuk menampilkan file yang terletak di direktori saat ini.
Contoh 5: Ekspor proses dengan informasi jenis
Contoh ini menjelaskan cara menyertakan informasi header #TYPE dalam file CSV. Header #TYPE adalah default dalam versi sebelum 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", ...
Cmdlet Get-Process
mendapatkan objek Proses. Objek proses dikirimkan alur ke cmdlet Export-Csv
.
Export-Csv
mengonversi objek proses menjadi serangkaian string CSV. Parameter Jalur menentukan bahwa file Processes.csv
disimpan di direktori saat ini.
IncludeTypeInformation menyertakan header informasi #TYPE dalam output CSV. Cmdlet Get-Content
menggunakan parameter Jalur untuk menampilkan file yang terletak di direktori saat ini.
Contoh 6: Mengekspor dan menambahkan objek ke file CSV
Contoh ini menjelaskan cara mengekspor objek ke file CSV dan menggunakan parameter Tambahkan untuk menambahkan objek ke file yang ada.
$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"
Cmdlet Get-Service
mendapatkan objek layanan. Parameter DisplayName mengembalikan layanan yang berisi kata Aplikasi. Objek layanan dikirimkan alur ke cmdlet Select-Object
.
Select-Object
menggunakan parameter Properti untuk menentukan properti DisplayName dan Status. Variabel $AppService
menyimpan objek.
Objek $AppService
dikirimkan alur ke cmdlet Export-Csv
.
Export-Csv
mengonversi objek layanan menjadi serangkaian string CSV. Parameter Jalur menentukan bahwa file Services.csv
disimpan di direktori saat ini. Parameter NoTypeInformation menghapus header informasi #TYPE dari output CSV dan tidak diperlukan di PowerShell 6. Cmdlet Get-Content
menggunakan parameter Jalur untuk menampilkan file yang terletak di direktori saat ini.
Cmdlet Get-Service
dan Select-Object
diulang untuk layanan yang berisi kata Windows. Variabel $WinService
menyimpan objek layanan. Cmdlet Export-Csv
menggunakan parameter Tambahkan untuk menentukan bahwa objek $WinService
ditambahkan ke file Services.csv
yang ada. Cmdlet Get-Content
diulang untuk menampilkan file yang diperbarui yang menyertakan data yang ditambahkan.
Contoh 7: Format cmdlet dalam alur membuat hasil yang tidak terduga
Contoh ini menunjukkan mengapa penting untuk tidak menggunakan cmdlet format dalam alur. Ketika output yang tidak terduga diterima, pecahkan masalah sintaks alur.
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",,,,,
Cmdlet Get-Date
mendapatkan objek DateTime. Objek dikirimkan alur ke cmdlet Select-Object
.
Select-Object
menggunakan parameter Properti untuk memilih subset properti objek. Objek dikirimkan alur ke cmdlet Export-Csv
.
Export-Csv
mengonversi objek ke format CSV. Parameter Jalur menentukan bahwa file DateTime.csv
disimpan di direktori saat ini. Parameter NoTypeInformation menghapus header informasi #TYPE dari output CSV dan tidak diperlukan di PowerShell 6. Cmdlet Get-Content
menggunakan parameter Jalur untuk menampilkan file CSV yang terletak di direktori saat ini.
Ketika cmdlet Format-Table
digunakan dalam alur untuk memilih properti hasil yang tidak terduga diterima.
Format-Table
mengirim objek format tabel ke bawah alur ke cmdlet Export-Csv
daripada objek DateTime.
Export-Csv
mengonversi objek format tabel menjadi serangkaian string CSV. Cmdlet Get-Content
menampilkan file CSV yang berisi objek format tabel.
Contoh 8: Menggunakan parameter Paksa untuk menimpa file baca-saja
Contoh ini membuat file baca-saja yang kosong dan menggunakan parameter Force untuk memperbarui file.
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"; ...
Cmdlet New-Item
menggunakan parameter Jalur dan ItemType untuk membuat file ReadOnly.csv
di direktori saat ini. Cmdlet Set-ItemProperty
menggunakan Nama dan parameter Nilai untuk mengubah properti IsReadOnly file menjadi true. Cmdlet Get-Process
mendapatkan objek Proses. Objek proses dikirimkan alur ke cmdlet Export-Csv
.
Export-Csv
mengonversi objek proses menjadi serangkaian string CSV. Parameter Jalur menentukan bahwa file ReadOnly.csv
disimpan di direktori saat ini. Parameter NoTypeInformation menghapus header informasi #TYPE dari output CSV dan tidak diperlukan di PowerShell 6. Output menunjukkan bahwa file tidak ditulis karena akses ditolak.
Parameter Force ditambahkan ke cmdlet Export-Csv
untuk memaksa ekspor menulis ke file. Cmdlet Get-Content
menggunakan parameter Jalur untuk menampilkan file yang terletak di direktori saat ini.
Contoh 9: Menggunakan parameter Paksa dengan Tambahkan
Contoh ini menunjukkan cara menggunakan parameter Force dan Tambahkan. Ketika parameter ini digabungkan, properti objek yang tidak cocok dapat ditulis ke file 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
Ekspresi membuat PSCustomObject dengan Nama dan properti Versi. Nilai disimpan dalam variabel $Content
. Variabel $Content
dikirimkan alur ke cmdlet Export-Csv
.
Export-Csv
menggunakan parameter Jalur dan menyimpan file ParmFile.csv
di direktori saat ini. Parameter NoTypeInformation menghapus header informasi #TYPE dari output CSV dan tidak diperlukan di PowerShell 6.
Ekspresi lain membuat PSCustomObject dengan Nama dan properti Edisi. Nilai disimpan dalam variabel $AdditionalContent
. Variabel $AdditionalContent
dikirimkan alur ke cmdlet Export-Csv
. Parameter Tambahkan digunakan untuk menambahkan data ke file. Penambah gagal karena ada ketidakcocokan nama properti antara Versi dan Edisi.
Cmdlet Export-Csv
parameter Force digunakan untuk memaksa ekspor menulis ke file. Properti Edisi dibuang. Cmdlet Import-Csv
menggunakan parameter Jalur untuk menampilkan file yang terletak di direktori saat ini.
Contoh 10: Ekspor ke CSV dengan tanda kutip di sekitar dua kolom
Contoh ini mengonversi objek DateTime menjadi string 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
Contoh 11: Ekspor ke CSV hanya dengan tanda kutip saat diperlukan
Contoh ini mengonversi objek DateTime menjadi string 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
Contoh 12: Mengonversi hashtable ke CSV
Di PowerShell 7.2 ke atas, saat Anda mengekspor hashtable ke CSV, kunci hashtable pertama diserialisasikan dan digunakan sebagai header dalam output file 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"
Contoh 13: Mengonversi hashtable ke CSV dengan properti tambahan
Di PowerShell 7.2 ke atas, saat Anda mengekspor hashtable yang memiliki properti tambahan yang ditambahkan dengan Add-Member
atau Select-Object
properti tambahan juga ditambahkan sebagai header dalam file 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"
Setiap hashtable memiliki properti bernama ExtraProp
ditambahkan oleh Add-Member
dan kemudian diekspor ke CSV. Anda dapat melihat ExtraProp
sekarang menjadi header dalam output file CSV.
Jika properti yang ditambahkan memiliki nama yang sama dengan kunci dari hashtable, kunci diutamakan dan hanya kunci yang diekspor ke CSV.
Parameter
-Append
Gunakan parameter ini sehingga Export-Csv
menambahkan output CSV ke akhir file yang ditentukan. Tanpa parameter ini, Export-Csv
menggantikan konten file tanpa peringatan.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Confirm
Meminta konfirmasi sebelum menjalankan cmdlet.
Jenis: | SwitchParameter |
Alias: | cf |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Delimiter
Menentukan pemisah untuk memisahkan nilai properti. Defaultnya adalah koma (,
). Masukkan karakter, seperti titik dua (:
). Untuk menentukan titik koma (;
), sertakan dalam tanda kutip.
Jenis: | Char |
Position: | 1 |
Nilai default: | comma (,) |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Encoding
Menentukan pengodean untuk file CSV yang diekspor. Nilai defaultnya adalah utf8NoBOM
.
Nilai yang dapat diterima untuk parameter ini adalah sebagai berikut:
-
ascii
: Menggunakan pengodean untuk set karakter ASCII (7-bit). -
ansi
: Menggunakan pengodean untuk halaman kode ANSI budaya saat ini. Opsi ini ditambahkan -
bigendianunicode
: Mengodekan dalam format UTF-16 menggunakan urutan byte big-endian. -
bigendianutf32
: Mengodekan dalam format UTF-32 menggunakan urutan byte big-endian. -
oem
: Menggunakan pengodean default untuk program MS-DOS dan konsol. -
unicode
: Mengodekan dalam format UTF-16 menggunakan urutan byte little-endian. -
utf7
: Mengodekan dalam format UTF-7. -
utf8
: Mengodekan dalam format UTF-8. -
utf8BOM
: Mengodekan dalam format UTF-8 dengan Byte Order Mark (BOM) -
utf8NoBOM
: Mengodekan dalam format UTF-8 tanpa Byte Order Mark (BOM) -
utf32
: Mengodekan dalam format UTF-32.
Dimulai dengan PowerShell 6.2, parameter Pengodean juga memungkinkan ID numerik halaman kode terdaftar (seperti -Encoding 1251
) atau nama string halaman kode terdaftar (seperti -Encoding "windows-1251"
). Untuk informasi selengkapnya, lihat dokumentasi .NET untuk Encoding.CodePage.
Dimulai dengan PowerShell 7.4, Anda dapat menggunakan nilai Ansi
untuk parameter Pengodean untuk meneruskan ID numerik untuk halaman kode ANSI budaya saat ini tanpa harus menentukannya secara manual.
Nota
UTF-7* tidak lagi disarankan untuk digunakan. Pada PowerShell 7.1, peringatan ditulis jika Anda menentukan utf7
untuk parameter Pengodean.
Jenis: | Encoding |
Nilai yang diterima: | ASCII, BigEndianUnicode, BigEndianUTF32, OEM, Unicode, UTF7, UTF8, UTF8BOM, UTF8NoBOM, UTF32 |
Position: | Named |
Nilai default: | UTF8NoBOM |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Force
Parameter ini memungkinkan Export-Csv
menimpa file dengan atribut Baca Saja.
Saat parameter Force dan Tambahkan digabungkan, objek yang berisi properti yang tidak cocok dapat ditulis ke file CSV. Hanya properti yang cocok yang ditulis ke file. Properti yang tidak cocok dibuang.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-IncludeTypeInformation
Ketika parameter ini digunakan baris pertama output CSV berisi #TYPE
diikuti dengan nama yang sepenuhnya memenuhi syarat dari jenis objek. Misalnya, #TYPE System.Diagnostics.Process
.
Parameter ini diperkenalkan di PowerShell 6.0.
Jenis: | SwitchParameter |
Alias: | ITI |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-InputObject
Menentukan objek yang akan diekspor sebagai string CSV. Masukkan variabel yang berisi objek atau ketik perintah atau ekspresi yang mendapatkan objek. Anda juga dapat menyalurkan objek ke Export-Csv
.
Jenis: | PSObject |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | True |
Terima karakter wildcard: | False |
-LiteralPath
Menentukan jalur ke file output CSV. Tidak seperti Jalur, nilai parameter LiteralPath digunakan persis seperti yang diketik. Tidak ada karakter yang ditafsirkan sebagai kartubebas. Jika jalur menyertakan karakter escape, gunakan tanda kutip tunggal. Tanda kutip tunggal memberi tahu PowerShell untuk tidak menginterpretasikan karakter apa pun sebagai urutan escape.
Jenis: | String |
Alias: | PSPath, LP |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-NoClobber
Gunakan parameter ini agar Export-Csv
tidak menimpa file yang ada. Secara default, jika file ada di jalur yang ditentukan, Export-Csv
menimpa file tanpa peringatan.
Jenis: | SwitchParameter |
Alias: | NoOverwrite |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-NoHeader
Saat parameter ini digunakan, cmdlet tidak menulis baris header yang berisi nama kolom ke output.
Parameter ini ditambahkan di PowerShell 7.4.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-NoTypeInformation
Menghapus header informasi #TYPE
dari output. Parameter ini menjadi default di PowerShell 6.0 dan disertakan untuk kompatibilitas mundur.
Jenis: | SwitchParameter |
Alias: | NTI |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Path
Parameter yang diperlukan yang menentukan lokasi untuk menyimpan file output CSV.
Jenis: | String |
Position: | 0 |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-QuoteFields
Menentukan nama kolom yang harus dikutip. Ketika parameter ini digunakan, hanya kolom yang ditentukan yang dikutip. Parameter ini ditambahkan di PowerShell 7.0.
Jenis: | String[] |
Alias: | QF |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-UseCulture
Menggunakan pemisah daftar untuk budaya saat ini sebagai pemisah item. Untuk menemukan pemisah daftar untuk budaya, gunakan perintah berikut: (Get-Culture).TextInfo.ListSeparator
.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-UseQuotes
Menentukan kapan tanda kutip digunakan dalam file CSV. Nilai yang mungkin adalah:
- Jangan pernah - jangan kutip apa-apa
- Always - kutip semuanya (perilaku default)
- AsNeeded - hanya bidang kutipan yang berisi karakter pemisah, tanda kutip ganda, atau karakter baris baru
Parameter ini ditambahkan di PowerShell 7.0.
Jenis: | Microsoft.PowerShell.Commands.BaseCsvWritingCommand+QuoteKind |
Alias: | UQ |
Position: | Named |
Nilai default: | Always |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-WhatIf
Mencegah cmdlet diproses atau membuat perubahan. Output menunjukkan apa yang akan terjadi jika cmdlet dijalankan.
Jenis: | SwitchParameter |
Alias: | wi |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
Input
Anda dapat menyalurkan objek apa pun dengan adaptor Extended Type System (ETS) ke cmdlet ini.
Output
None
Cmdlet ini tidak mengembalikan output.
Catatan
PowerShell menyertakan alias berikut untuk Export-Csv
:
- Semua platform:
epcsv
cmdlet Export-Csv
mengonversi objek yang Anda kirimkan menjadi serangkaian string CSV dan menyimpannya dalam file teks yang ditentukan. Anda dapat menggunakan Export-Csv -IncludeTypeInformation
untuk menyimpan objek dalam file CSV lalu menggunakan cmdlet Import-Csv
untuk membuat objek dari teks dalam file CSV.
Dalam file CSV, setiap objek diwakili oleh daftar nilai properti objek yang dipisahkan karakter. Nilai properti dikonversi ke string menggunakan metode ToString(). String diwakili oleh nama nilai properti.
Export-Csv -IncludeTypeInformation
tidak mengekspor metode objek.
String CSV adalah output sebagai berikut:
- Jika IncludeTypeInformation digunakan, string pertama berisi header informasi #TYPE diikuti dengan nama tipe objek yang sepenuhnya memenuhi syarat. Misalnya, #TYPE System.Diagnostics.Process.
- Jika IncludeTypeInformation tidak digunakan, string pertama menyertakan header kolom. Header berisi nama properti objek pertama sebagai daftar yang dipisahkan karakter.
- String yang tersisa berisi daftar yang dipisahkan karakter dari setiap nilai properti objek.
Dimulai dengan PowerShell 6.0 perilaku default Export-Csv
adalah tidak menyertakan informasi #TYPE dalam CSV dan NoTypeInformation tersirat.
IncludeTypeInformation dapat digunakan untuk menyertakan Informasi #TYPE dan meniru perilaku default Export-Csv
sebelum PowerShell 6.0.
Saat Anda mengirimkan beberapa objek ke Export-Csv
, Export-Csv
mengatur file berdasarkan properti objek pertama yang Anda kirimkan. Jika objek yang tersisa tidak memiliki salah satu properti yang ditentukan, nilai properti objek tersebut null, seperti yang diwakili oleh dua koma berturut-turut. Jika objek yang tersisa memiliki properti tambahan, nilai properti tersebut tidak disertakan dalam file.
Anda dapat menggunakan cmdlet Import-Csv
untuk membuat ulang objek dari string CSV dalam file. Objek yang dihasilkan adalah versi CSV dari objek asli yang terdiri dari representasi string dari nilai properti dan tanpa metode.
Cmdlet ConvertTo-Csv
dan ConvertFrom-Csv
mengonversi objek menjadi string CSV dan dari string CSV.
Export-Csv
sama dengan ConvertTo-Csv
, kecuali bahwa string CSV disimpan dalam file.