Export-Csv
Nesneleri karakterle ayrılmış değer (CSV) dizeleri dizisine dönüştürür ve dizeleri bir dosyaya kaydeder.
Sözdizimi
Delimiter EnterprisePublishing
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
Export-Csv cmdlet'i gönderdiğiniz nesnelerin CSV dosyasını oluşturur. Her nesne, nesnenin özellik değerlerinin karakterle ayrılmış listesini içeren bir satırdır.
Export-Csv cmdlet'ini kullanarak elektronik tablolar oluşturabilir ve csv dosyalarını giriş olarak kabul eden programlarla veri paylaşabilirsiniz.
Nesneleri Export-Csv cmdlet'ine göndermeden önce biçimlendirmeyin.
Export-Csv biçimlendirilmiş nesneler alırsa, CSV dosyası nesne özellikleri yerine biçim özelliklerini içerir. Bir nesnenin yalnızca seçili özelliklerini dışarı aktarmak için Select-Object cmdlet'ini kullanın.
Örnekler
Örnek 1: İşlem özelliklerini CSV dosyasına aktarma
Bu örnek, belirli özelliklere sahip nesneleri İşle'yi seçer, nesneleri csv dosyasına aktarır.
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
Get-Process cmdlet'i İşlem nesnelerini alır.
Adı parametresi çıkışı yalnızca WmiPrvSE işlem nesnelerini içerecek şekilde filtreler. İşlem nesneleri işlem hattına Select-Object cmdlet'ine gönderilir.
Select-Object, işlem nesnesi özelliklerinin bir alt kümesini seçmek için Özelliği parametresini kullanır. İşlem nesneleri işlem hattına Export-Csv cmdlet'ine gönderilir.
Export-Csv işlem nesnelerini bir dizi CSV dizesine dönüştürür.
Yolu parametresi, WmiData.csv dosyasının geçerli dizine kaydedildiğini belirtir.
NoTypeInformation parametresi, CSV çıkışından #TYPE bilgi üst bilgisini kaldırır ve PowerShell 6'da gerekli değildir.
Import-Csv cmdlet'i geçerli dizinde bulunan dosyayı görüntülemek için Path parametresini kullanır.
Örnek 2: İşlemleri virgülle ayrılmış bir dosyaya dışarı aktarma
Bu örnek İşlem nesnelerini alır ve nesneleri csv dosyasına aktarır.
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", ...
Get-Process cmdlet'i process nesnelerini alır. İşlem nesneleri işlem hattına Export-Csv cmdlet'ine gönderilir.
Export-Csv işlem nesnelerini bir dizi CSV dizesine dönüştürür.
Yolu parametresi, Processes.csv dosyasının geçerli dizine kaydedildiğini belirtir.
NoTypeInformation parametresi, CSV çıkışından #TYPE bilgi üst bilgisini kaldırır ve PowerShell 6'da gerekli değildir.
Get-Content cmdlet'i geçerli dizinde bulunan dosyayı görüntülemek için Path parametresini kullanır.
Örnek 3: İşlemleri noktalı virgülle ayrılmış bir dosyaya aktarma
Bu örnek, İşlem nesnelerini alır ve nesneleri noktalı virgül sınırlayıcı içeren bir dosyaya aktarır.
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"; ...
Get-Process cmdlet'i process nesnelerini alır. İşlem nesneleri işlem hattına Export-Csv cmdlet'ine gönderilir.
Export-Csv işlem nesnelerini bir dizi CSV dizesine dönüştürür.
Yolu parametresi, Processes.csv dosyasının geçerli dizine kaydedildiğini belirtir.
Sınırlayıcı parametresi, dize değerlerini ayırmak için noktalı virgül belirtir.
NoTypeInformation parametresi, CSV çıkışından #TYPE bilgi üst bilgisini kaldırır ve PowerShell 6'da gerekli değildir.
Get-Content cmdlet'i geçerli dizinde bulunan dosyayı görüntülemek için Path parametresini kullanır.
Örnek 4: Geçerli kültürün liste ayırıcısını kullanarak işlemleri dışarı aktarma
Bu örnek İşlem nesnelerini alır ve nesneleri bir dosyaya aktarır. Sınırlayıcı, geçerli kültürün liste ayırıcısıdır.
(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", ...
Get-Culture cmdlet'i, iç içe geçmiş TextInfo ve ListSeparator özelliklerini kullanır ve geçerli kültürün varsayılan ayırıcısını görüntüler.
Get-Process cmdlet'i process nesnelerini alır. İşlem nesneleri işlem hattına Export-Csv cmdlet'ine gönderilir.
Export-Csv işlem nesnelerini bir dizi CSV dizesine dönüştürür.
Yolu parametresi, Processes.csv dosyasının geçerli dizine kaydedildiğini belirtir.
UseCulture parametresi sınırlayıcı olarak geçerli kültürün varsayılan liste ayırıcısını kullanır.
NoTypeInformation parametresi, CSV çıkışından #TYPE bilgi üst bilgisini kaldırır ve PowerShell 6'da gerekli değildir.
Get-Content cmdlet'i geçerli dizinde bulunan dosyayı görüntülemek için Path parametresini kullanır.
Örnek 5: İşlemleri tür bilgileriyle dışarı aktarma
Bu örnekte, csv dosyasına #TYPE üst bilgi bilgilerinin nasıl dahil olduğu açıklanmaktadır. #TYPE üst bilgisi, PowerShell 6.0'ın önceki sürümlerinde varsayılandır.
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", ...
Get-Process cmdlet'i process nesnelerini alır. İşlem nesneleri işlem hattına Export-Csv cmdlet'ine gönderilir.
Export-Csv işlem nesnelerini bir dizi CSV dizesine dönüştürür.
Yolu parametresi, Processes.csv dosyasının geçerli dizine kaydedildiğini belirtir.
IncludeTypeInformation, CSV çıktısında #TYPE bilgi üst bilgisini içerir.
Get-Content cmdlet'i geçerli dizinde bulunan dosyayı görüntülemek için Path parametresini kullanır.
Örnek 6: Nesneleri CSV dosyasına dışarı aktarma ve ekleme
Bu örnekte, nesneleri CSV dosyasına dışarı aktarma ve var olan bir dosyaya nesne eklemek için Ekleme parametresini kullanma açıklanmaktadır.
$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"
Get-Service cmdlet'i hizmet nesnelerini alır.
DisplayName parametresi, Application sözcüğünü içeren hizmetleri döndürür. Hizmet nesneleri işlem hattı Select-Object cmdlet'ine gönderilir.
Select-Object, DisplayName ve Status özelliklerini belirtmek için Özelliği parametresini kullanır.
$AppService değişkeni nesneleri depolar.
$AppService nesneleri işlem hattını Export-Csv cmdlet'ine gönderilir.
Export-Csv, hizmet nesnelerini bir dizi CSV dizesine dönüştürür.
Yolu parametresi, Services.csv dosyasının geçerli dizine kaydedildiğini belirtir.
NoTypeInformation parametresi, CSV çıkışından #TYPE bilgi üst bilgisini kaldırır ve PowerShell 6'da gerekli değildir.
Get-Content cmdlet'i geçerli dizinde bulunan dosyayı görüntülemek için Path parametresini kullanır.
windows sözcüğünü içeren hizmetler için Get-Service ve Select-Object cmdlet'leri yinelenir.
$WinService değişkeni hizmet nesnelerini depolar.
Export-Csv cmdlet'i, nesnelerinin var olan $WinService dosyasına ekleneceğini belirtmek için Services.csv parametresini kullanır.
Get-Content cmdlet'i, eklenen verileri içeren güncelleştirilmiş dosyayı görüntülemek için yinelenir.
Örnek 7: İşlem hattı içinde cmdlet'i biçimlendirme beklenmeyen sonuçlar oluşturur
Bu örnek, bir işlem hattı içinde biçim cmdlet'i kullanmama neden önemli olduğunu gösterir. Beklenmeyen çıkış alındığında işlem hattı söz diziminde sorun giderin.
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",,,,,
Get-Date cmdlet'i DateTime nesnesini alır. Nesnesi, işlem hattı Select-Object cmdlet'ine gönderilir.
Select-Object, nesne özelliklerinin bir alt kümesini seçmek için Özelliği parametresini kullanır. Nesnesi, işlem hattı Export-Csv cmdlet'ine gönderilir.
Export-Csv nesneyi CSV biçimine dönüştürür.
Yolu parametresi, DateTime.csv dosyasının geçerli dizine kaydedildiğini belirtir.
NoTypeInformation parametresi, CSV çıkışından #TYPE bilgi üst bilgisini kaldırır ve PowerShell 6'da gerekli değildir.
Get-Content cmdlet'i geçerli dizinde bulunan CSV dosyasını görüntülemek için Path parametresini kullanır.
Format-Table cmdlet'i işlem hattı içinde özellikleri seçmek için kullanıldığında beklenmeyen sonuçlar alınır.
Format-Table, tablo biçimi nesnelerini Export-Csv nesnesi yerine cmdlet'ine işlem hattına gönderir.
Export-Csv tablo biçimi nesnelerini bir dizi CSV dizesine dönüştürür.
Get-Content cmdlet'i tablo biçimi nesnelerini içeren CSV dosyasını görüntüler.
Örnek 8: Salt okunur dosyaların üzerine yazmak için Zorla parametresini kullanma
Bu örnek boş, salt okunur bir dosya oluşturur ve dosyayı güncelleştirmek için zorla parametresini kullanır.
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"; ...
New-Item cmdlet'i geçerli dizinde dosyasını oluşturmak için Yol ve ReadOnly.csv parametrelerini kullanır.
Set-ItemProperty cmdlet'i, dosyanın IsReadOnly özelliğini true olarak değiştirmek için Name ve Value parametrelerini kullanır.
Get-Process cmdlet'i process nesnelerini alır. İşlem nesneleri işlem hattına Export-Csv cmdlet'ine gönderilir.
Export-Csv işlem nesnelerini bir dizi CSV dizesine dönüştürür.
Yolu parametresi, ReadOnly.csv dosyasının geçerli dizine kaydedildiğini belirtir.
NoTypeInformation parametresi, CSV çıkışından #TYPE bilgi üst bilgisini kaldırır ve PowerShell 6'da gerekli değildir. Çıkış, erişim reddedildiğinden dosyanın yazılmadığını gösterir.
dışarı aktarmayı dosyaya yazmaya zorlamak için cmdlet'ine Export-Csv parametresi eklenir.
Get-Content cmdlet'i geçerli dizinde bulunan dosyayı görüntülemek için Path parametresini kullanır.
Örnek 9: Ekleme ile Force parametresini kullanma
Bu örnekte Zorla ve Ekleme parametrelerinin nasıl kullanılacağı gösterilmektedir. Bu parametreler birleştirildiğinde, eşleşmeyen nesne özellikleri csv dosyasına yazılabilir.
$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
İfade, Ad ve Sürüm özelliklerine sahip PSCustomObject oluşturur. Değerler $Content değişkeninde depolanır.
$Content değişkeni, işlem hattından Export-Csv cmdlet'ine gönderilir.
Export-Csv
Path parametresini kullanır ve ParmFile.csv dosyasını geçerli dizine kaydeder.
NoTypeInformation parametresi, CSV çıkışından #TYPE bilgi üst bilgisini kaldırır ve PowerShell 6'da gerekli değildir.
Başka bir ifade, Name ve Edition özellikleriyle bir PSCustomObject oluşturur. Değerler $AdditionalContent değişkeninde depolanır.
$AdditionalContent değişkeni, işlem hattından Export-Csv cmdlet'ine gönderilir.
Ekleme parametresi, verileri dosyaya eklemek için kullanılır.
Sürüm ile Editionarasında özellik adı uyuşmazlığı olduğundan ekleme başarısız oluyor.
dışarı aktarmayı dosyaya yazmaya zorlamak için Export-Csv cmdlet Force parametresi kullanılır.
Edition özelliği atılır.
Import-Csv cmdlet'i geçerli dizinde bulunan dosyayı görüntülemek için Path parametresini kullanır.
Örnek 10: İki sütun çevresinde tırnak işaretleri içeren CSV'ye dışarı aktarma
Bu örnek, DateTime nesnesini CSV dizesine dönüştürür.
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
Örnek 11: CSV'ye yalnızca gerektiğinde tırnak işaretleri ile dışarı aktarma
Bu örnek, DateTime nesnesini CSV dizesine dönüştürür.
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
Örnek 12: Karma tablolarını CSV'ye dönüştürme
PowerShell 7.2 ve üzerinde, karma tablolarınızı CSV'ye aktardığınızda, ilk karma tablo anahtarları serileştirilir ve csv dosyası çıkışında üst bilgi olarak kullanılır.
$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"
Örnek 13: Ek özelliklerle karma tablolarını CSV'ye dönüştürme
PowerShell 7.2 ve üzerinde, Add-Member veya Select-Object ek özellikleri eklenmiş olan bir karma tablo dışarı aktardığınızda, ek özellikler csv dosyasına üst bilgi olarak da eklenir.
$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"
Her karma tablo, ExtraProp tarafından eklenen ve csv'ye aktarılan Add-Member adlı bir özelliğe sahiptir.
ExtraProp artık CSV dosya çıkışında bir üst bilgi olduğunu görebilirsiniz.
Eklenen bir özellik, karma tablodaki anahtarla aynı ada sahipse, anahtar önceliklidir ve yalnızca anahtar CSV'ye aktarılır.
Parametreler
-Append
Export-Csv belirtilen dosyanın sonuna CSV çıkışı ekleyebilmesi için bu parametreyi kullanın. Bu parametre olmadan, Export-Csv dosya içeriğini uyarı olmadan değiştirir.
Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-Confirm
Cmdlet'i çalıştırmadan önce sizden onay ister.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | Cf |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-Delimiter
Özellik değerlerini ayırmak için bir sınırlayıcı belirtir. Varsayılan değer virgüldür (,). Bir karakter girin, örneğin iki nokta üst üste (:). Noktalı virgül belirtmek için (;), tırnak içine alın.
Parametre özellikleri
| Tür: | Char |
| Default value: | comma (,) |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
Delimiter
| Position: | 1 |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-Encoding
Dışarı aktarılan CSV dosyasının kodlamasını belirtir. Varsayılan değer şudur: utf8NoBOM.
Bu parametre için kabul edilebilir değerler aşağıdaki gibidir:
-
ascii: ASCII (7 bit) karakter kümesi için kodlamayı kullanır. -
ansi: Geçerli kültürün ANSI kod sayfasının kodlamasını kullanır. Bu seçenek eklendi -
bigendianunicode: Büyük endian bayt sırasını kullanarak UTF-16 biçiminde kodlar. -
bigendianutf32: Büyük endian bayt sırasını kullanarak UTF-32 biçiminde kodlar. -
oem: MS-DOS ve konsol programları için varsayılan kodlamayı kullanır. -
unicode: Küçük-öncelikli bayt sırası kullanılarak UTF-16 biçiminde kodlanır. -
utf7: UTF-7 biçiminde kodlar. -
utf8: UTF-8 biçiminde kodlar. -
utf8BOM: Bayt Sırası İşareti (BOM) ile UTF-8 biçiminde kodlar -
utf8NoBOM: Bayt Sırası İşareti (BOM) olmadan UTF-8 biçiminde kodlar -
utf32: UTF-32 biçiminde kodlar.
PowerShell 6.2'den başlayarak, Kodlama parametresi, kayıtlı kod sayfalarının sayısal kimliklerine (-Encoding 1251gibi) veya kayıtlı kod sayfalarının dize adlarına (-Encoding "windows-1251"gibi) de izin verir. Daha fazla bilgi için Encoding.CodePageiçin .NET belgelerine bakın.
PowerShell 7.4'den başlayarak, Ansi parametresinin değerini kullanarak geçerli kültürün ANSI kod sayfasının sayısal kimliğini el ile belirtmek zorunda kalmadan geçirebilirsiniz.
Uyarı
UTF-7* artık kullanılması önerilmez. PowerShell 7.1'den itibaren, utf7 parametresi için belirtirseniz bir uyarı yazılır.
Parametre özellikleri
| Tür: | Encoding |
| Default value: | UTF8NoBOM |
| Kabul edilen değerler: | ASCII, BigEndianUnicode, BigEndianUTF32, OEM, Unicode, UTF7, UTF8, UTF8BOM, UTF8NoBOM, UTF32 |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-Force
Bu parametre, Export-CsvSalt Okunur özniteliğiyle dosyaların üzerine yazmasına olanak tanır.
Zorla ve Ekleme parametreleri birleştirildiğinde, eşleşmeyen özellikler içeren nesneler CSV dosyasına yazılabilir. Dosyaya yalnızca eşleşen özellikler yazılır. Eşleşmeyen özellikler atılır.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-IncludeTypeInformation
Bu parametre kullanıldığında CSV çıkışının ilk satırı #TYPE ve ardından nesne türünün tam adını içerir. Örneğin, #TYPE System.Diagnostics.Process.
Bu parametre PowerShell 6.0'da kullanıma sunulmuştur.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | ITI |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-InputObject
CSV dizeleri olarak dışarı aktaracak nesneleri belirtir. Nesneleri içeren bir değişken girin veya nesneleri alan bir komut veya ifade yazın. Nesneleri Export-Csv'e de yöneltebilirsiniz.
Parametre özellikleri
| Tür: | PSObject |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | True |
| İşlem hattından gelen değer: | True |
| Özellik adına göre işlem hattından gelen değer: | True |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-LiteralPath
CSV çıkış dosyasının yolunu belirtir. Pathaksine, LiteralPath parametresinin değeri tam olarak yazıldığı gibi kullanılır. Hiçbir karakter joker karakter olarak yorumlanmamıştır. Yol kaçış karakterleri içeriyorsa, tek tırnak işaretleri kullanın. Tek tırnak işaretleri, PowerShell'in hiçbir karakteri kaçış dizisi olarak yorumlamamasını sağlar.
Parametre özellikleri
| Tür: | String |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | PSPath, LP |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-NoClobber
Export-Csv varolan bir dosyanın üzerine yazmaması için bu parametreyi kullanın. Varsayılan olarak, dosya belirtilen yolda varsa, Export-Csv uyarı vermeden dosyanın üzerine yazar.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | NoOverwrite |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-NoHeader
Bu parametre kullanıldığında, cmdlet çıktıya sütun adlarını içeren bir üst bilgi satırı yazmaz.
Bu parametre PowerShell 7.4'e eklendi.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-NoTypeInformation
Çıktıdan #TYPE bilgi üst bilgisini kaldırır. Bu parametre PowerShell 6.0'da varsayılan değer oldu ve geriye dönük uyumluluk için eklenmiştir.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | NTI |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-Path
CSV çıkış dosyasının kaydedilecek konumu belirten gerekli bir parametre.
Parametre özellikleri
| Tür: | String |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
(All)
| Position: | 0 |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-QuoteFields
Tırnak içine alınması gereken sütunların adlarını belirtir. Bu parametre kullanıldığında, yalnızca belirtilen sütunlar tırnak içine alınır. Bu parametre PowerShell 7.0'a eklendi.
Parametre özellikleri
| Tür: | String[] |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | QF |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-UseCulture
Öğe sınırlayıcısı olarak geçerli kültür için liste ayırıcısını kullanır. Bir kültürün liste ayırıcısını bulmak için şu komutu kullanın: (Get-Culture).TextInfo.ListSeparator.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
UseCulture
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-UseQuotes
CSV dosyalarında tırnakların ne zaman kullanılacağını belirtir. Olası değerler şunlardır:
- Hiçbir zaman - hiçbir şeyden alıntı yapmayın
- Her zaman - her şeyi alıntıla (varsayılan davranış)
- AsNeeded - yalnızca sınırlayıcı karakter, çift tırnak veya yeni satır karakteri içeren tırnak alanları
Bu parametre PowerShell 7.0'a eklendi.
Parametre özellikleri
| Tür: | Microsoft.PowerShell.Commands.BaseCsvWritingCommand+QuoteKind |
| Default value: | Always |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | UQ |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-WhatIf
Cmdlet'in işlenmesini veya değişiklik yapılmasını engeller. Çıktı, cmdlet çalıştırıldığında ne olacağını gösterir.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | Wi |
Parametre kümeleri
(All)
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
CommonParameters
Bu cmdlet yaygın parametreleri destekler: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction ve -WarningVariable. Daha fazla bilgi için bkz. about_CommonParameters.
Girişler
PSObject
Genişletilmiş Tür Sistemi (ETS) bağdaştırıcısına sahip herhangi bir nesneyi bu cmdlet'e yöneltebilirsiniz.
Çıkışlar
None
Bu cmdlet çıkış döndürmez.
Notlar
PowerShell, Export-Csviçin aşağıdaki diğer adları içerir:
- Tüm platformlar:
epcsv
Export-Csv cmdlet'i gönderdiğiniz nesneleri bir dizi CSV dizesine dönüştürür ve bunları belirtilen metin dosyasına kaydeder. CSV dosyasındaki nesneleri kaydetmek için Export-Csv -IncludeTypeInformation kullanabilir ve ardından CSV dosyasındaki metinden nesne oluşturmak için Import-Csv cmdlet'ini kullanabilirsiniz.
CSV dosyasında her nesne, nesnenin özellik değerlerinin karakterle ayrılmış bir listesiyle temsil edilir. Özellik değerleri, ToString() yöntemi kullanılarak dizelere dönüştürülür. Dizeler özellik değeri adıyla temsil edilir.
Export-Csv -IncludeTypeInformation nesnesinin yöntemlerini dışarı aktarmaz.
CSV dizeleri aşağıdaki gibi olarak çıkartılır.
- IncludeTypeInformation kullanılırsa, ilk dize #TYPE bilgi üst bilgisini ve ardından nesne türünün tam adını içerir. Örneğin, #TYPE System.Diagnostics.Process.
- IncludeTypeInformation kullanılmazsa, ilk dize sütun başlıklarını içerir. Üst bilgiler, ilk nesnenin özellik adlarını karakterle ayrılmış liste olarak içerir.
- Kalan dizeler, her nesnenin özellik değerlerinin karakterle ayrılmış listelerini içerir.
PowerShell 6.0 ile başlayarak, Export-Csv varsayılan davranışını öykünmek için kullanılabilir.
Export-Csviçin birden çok nesne gönderdiğinizde Export-Csv dosyayı gönderdiğiniz ilk nesnenin özelliklerine göre düzenler. Kalan nesneler belirtilen özelliklerden birine sahip değilse, ardışık iki virgülle gösterildiği gibi bu nesnenin özellik değeri null olur. Kalan nesnelerin ek özellikleri varsa, bu özellik değerleri dosyaya dahil değildir.
dosyalarındaki CSV dizelerinden nesneleri yeniden oluşturmak için Import-Csv cmdlet'ini kullanabilirsiniz. Sonuçta elde edilen nesneler, özellik değerlerinin dize gösterimlerinden oluşan ve yöntem içermeyen özgün nesnelerin CSV sürümleridir.
ConvertTo-Csv ve ConvertFrom-Csv cmdlet'leri nesneleri CSV dizelerine ve CSV dizelerinden dönüştürür.
Export-Csv, CSV dizelerini bir dosyaya kaydetmesi dışında ConvertTo-Csvile aynıdır.