Bagikan melalui


Export-Csv

Mengonversi objek menjadi serangkaian string nilai yang dipisahkan karakter (CSV) dan menyimpan string ke file.

Sintaks

Delimiter (Default)

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>]

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-Csvparameter 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.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Confirm

Meminta konfirmasi sebelum menjalankan cmdlet.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False
Alias:Cf

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Delimiter

Menentukan pemisah untuk memisahkan nilai properti. Defaultnya adalah koma (,). Masukkan karakter, seperti titik dua (:). Untuk menentukan titik koma (;), sertakan dalam tanda kutip.

Properti parameter

Jenis:Char
Nilai default:comma (,)
Mendukung wildcard:False
DontShow:False

Set parameter

Delimiter
Position:1
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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: Mengenkripsi dalam format UTF-16 menggunakan urutan byte big-endian.
  • bigendianutf32: Mengenkode dalam format UTF-32 menggunakan urutan byte big-endian.
  • oem: Menggunakan pengkodean default untuk program MS-DOS dan program konsol.
  • unicode: Mengode 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 ) atau nama string halaman kode terdaftar (seperti ). Untuk informasi selengkapnya, lihat dokumentasi .NET untuk Encoding.CodePage.

Dimulai dengan PowerShell 7.4, Anda dapat menggunakan nilai 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. Sejak PowerShell 7.1, sebuah peringatan akan ditulis jika Anda menentukan utf7 untuk parameter Pengodean .

Properti parameter

Jenis:Encoding
Nilai default:UTF8NoBOM
Nilai yang diterima:ASCII, BigEndianUnicode, BigEndianUTF32, OEM, Unicode, UTF7, UTF8, UTF8BOM, UTF8NoBOM, UTF32
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-IncludeTypeInformation

Ketika parameter ini digunakan baris pertama output CSV berisi #TYPE diikuti dengan nama yang sepenuhnya memenuhi syarat dari jenis objek. Contohnya, #TYPE System.Diagnostics.Process.

Parameter ini diperkenalkan di PowerShell 6.0.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False
Alias:ITI

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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.

Properti parameter

Jenis:PSObject
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:True
Nilai dari alur:True
Nilai dari alur berdasarkan nama properti:True
Nilai dari argumen yang tersisa:False

-LiteralPath

Menentukan jalur ke file output CSV. Tidak seperti Jalur, nilai parameter LiteralPath digunakan persis sebagaimana diketik. Tidak ada karakter yang ditafsirkan sebagai wildcard. Jika jalur menyertakan karakter escape, gunakan tanda kutip tunggal. Tanda kutip tunggal memberi tahu PowerShell untuk tidak menginterpretasikan karakter apa pun sebagai urutan escape.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:PSPath, LP

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False
Alias:NoOverwrite

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-NoHeader

Saat parameter ini digunakan, cmdlet tidak menulis baris header yang berisi nama kolom ke output.

Parameter ini ditambahkan di PowerShell 7.4.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-NoTypeInformation

Menghapus header informasi #TYPE dari output. Parameter ini menjadi default di PowerShell 6.0 dan disertakan untuk kompatibilitas mundur.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False
Alias:NTI

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-Path

Parameter yang diperlukan yang menentukan lokasi untuk menyimpan file output CSV.

Properti parameter

Jenis:String
Nilai default:None
Mendukung wildcard:False
DontShow:False

Set parameter

(All)
Position:0
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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.

Properti parameter

Jenis:

String[]

Nilai default:None
Mendukung wildcard:False
DontShow:False
Alias:QF

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False

Set parameter

UseCulture
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa: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.

Properti parameter

Jenis:Microsoft.PowerShell.Commands.BaseCsvWritingCommand+QuoteKind
Nilai default:Always
Mendukung wildcard:False
DontShow:False
Alias:UQ

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

-WhatIf

Mencegah cmdlet diproses atau membuat perubahan. Output menunjukkan apa yang akan terjadi jika cmdlet dijalankan.

Properti parameter

Jenis:SwitchParameter
Nilai default:False
Mendukung wildcard:False
DontShow:False
Alias:wi

Set parameter

(All)
Position:Named
Wajib:False
Nilai dari alur:False
Nilai dari alur berdasarkan nama properti:False
Nilai dari argumen yang tersisa:False

CommonParameters

Cmdlet ini mendukung parameter umum: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, dan -WarningVariable. Untuk informasi selengkapnya, lihat about_CommonParameters.

Input

PSObject

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.