ConvertTo-Csv
A .NET-objektumokat karakterekkel tagolt érték (CSV) sztringek sorozatává alakítja.
Syntax
Delimiter (Alapértelmezett)
ConvertTo-Csv
[-InputObject] <psobject>
[[-Delimiter] <char>]
[-NoTypeInformation]
[<CommonParameters>]
UseCulture
ConvertTo-Csv
[-InputObject] <psobject>
[-UseCulture]
[-NoTypeInformation]
[<CommonParameters>]
Description
A ConvertTo-Csv parancsmag a beküldött objektumokat ábrázoló karakterelválasztó (CSV) sztringek sorozatát adja vissza. Ezután a ConvertFrom-Csv parancsmaggal újból létrehozhat objektumokat a CSV-sztringekből. A CSV-ből konvertált objektumok az eredeti objektumok sztringértékei, amelyek tulajdonságértékeket és metódusokat nem tartalmaznak.
A Export-Csv parancsmaggal csv-sztringekké alakíthatja az objektumokat.
Export-Csv hasonló a ConvertTo-Csv, kivéve, hogy a CSV-sztringeket fájlba menti.
A ConvertTo-Csv parancsmag olyan paraméterekkel rendelkezik, amelyek nem vesszőt, vagy az aktuális kultúrát használják elválasztóként.
Példák
1. példa: Objektum konvertálása CSV-vé
Ez a példa egy Process objektumot KONVERTÁL CSV-sztringgé.
Get-Process -Name 'PowerShell' | ConvertTo-Csv -NoTypeInformation
"Name","SI","Handles","VM","WS","PM","NPM","Path","Company","CPU","FileVersion", ...
"powershell","11","691","2204036739072","175943680","132665344","33312", ...
A Get-Process parancsmag lekéri a Folyamat objektumot, és a Név paramétert használja a PowerShell-folyamat megadásához. A folyamatobjektumot a rendszer elküldi a folyamaton a ConvertTo-Csv parancsmagnak. A ConvertTo-Csv parancsmag CSV-sztringekké alakítja az objektumot. A NoTypeInformation paraméter eltávolítja a #TYPE információs fejlécet a CSV-kimenetből.
2. példa: DateTime-objektum konvertálása CSV-vé
Ez a példa egy DateTime objektumot KONVERTÁL CSV-sztringgé.
$Date = Get-Date
ConvertTo-Csv -InputObject $Date -Delimiter ';' -NoTypeInformation
"DisplayHint";"DateTime";"Date";"Day";"DayOfWeek";"DayOfYear";"Hour";"Kind";"Millisecond";"Minute";"Month";"Second";"Ticks";"TimeOfDay";"Year"
"DateTime";"Friday, January 4, 2019 14:40:51";"1/4/2019 00:00:00";"4";"Friday";"4";"14";"Local";"711";"40";"1";"51";"636822096517114991";"14:40:51.7114991";"2019"
A Get-Date parancsmag lekéri a DateTime objektumot, és menti a $Date változóba. A ConvertTo-Csv parancsmag sztringekké alakítja a DateTime objektumot. Az InputObject paraméter a változóban tárolt $Date objektumot használja. A elválasztó paraméter pontosvesszőt ad meg a sztringértékek elválasztásához. A NoTypeInformation paraméter eltávolítja a #TYPE információs fejlécet a CSV-kimenetből.
3. példa: A PowerShell-eseménynapló konvertálása CSV-vé
Ez a példa a PowerShell Windows-eseménynaplóját CSV-sztringek sorozatává alakítja.
(Get-Culture).TextInfo.ListSeparator
Get-WinEvent -LogName 'Windows PowerShell' | ConvertTo-Csv -UseCulture -NoTypeInformation
,
"Message","Id","Version","Qualifiers","Level","Task","Opcode","Keywords","RecordId", ...
"Error Message = System error","403",,"0","4","4",,"36028797018963968","46891","PowerShell", ...
A Get-Culture parancsmag a Beágyazott tulajdonságokat TextInfo és ListSeparator használja, és megjeleníti az aktuális kultúra alapértelmezett listaelválasztóját. A Get-WinEvent parancsmag lekéri az eseménynapló-objektumokat, és a LogName paraméter használatával adja meg a naplófájl nevét. Az eseménynapló-objektumok le lesznek küldve a folyamaton a ConvertTo-Csv parancsmagba. A ConvertTo-Csv parancsmag az eseménynapló-objektumokat CSV-sztringek sorozatává alakítja. A UseCulture paraméter az aktuális kultúra alapértelmezett listaelválasztóját használja elválasztóként. A NoTypeInformation paraméter eltávolítja a #TYPE információs fejlécet a CSV-kimenetből.
Paraméterek
-Delimiter
Megadja a CSV-sztringek tulajdonságértékeinek elválasztásához használt elválasztójelet. Az alapértelmezett érték egy vessző (,). Adjon meg egy karaktert, például kettőspontot (:). Ha pontosvesszőt (;) szeretne megadni, akkor azt idézőjelek közé kell foglalnia.
Paramétertulajdonságok
| Típus: | Char |
| Alapértelmezett érték: | comma (,) |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
Delimiter
| Position: | 1 |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-InputObject
Megadja a CSV-sztringekké konvertált objektumokat. Adjon meg egy változót, amely tartalmazza az objektumokat, vagy írjon be egy parancsot vagy kifejezést, amely lekéri az objektumokat. Az objektumokat ConvertTo-Csv-ba is továbbíthatja.
Paramétertulajdonságok
| Típus: | PSObject |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | True |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-NoTypeInformation
Eltávolítja a #TYPE információs fejlécet a kimenetből. Ez a paraméter lett az alapértelmezett a PowerShell 6.0-ban, és a visszamenőleges kompatibilitás érdekében tartalmazza.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | NTI |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-UseCulture
Az aktuális kultúra listaelválasztót használja elválasztó elemként. Egy kultúra listaelválasztójának megkereséséhez használja a következő parancsot: (Get-Culture).TextInfo.ListSeparator.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
UseCulture
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CommonParameters
Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.
Bevitelek
PSObject
A parancsmaghoz bármely olyan objektumot csövezhet, amely rendelkezik kiterjesztett típusú rendszer-(ETS-) adaptersel.
Kimenetek
String
Ez a parancsmag egy vagy több, az egyes átalakított objektumokat képviselő sztringet ad vissza.
Jegyzetek
CSV formátumban minden objektumot a tulajdonságérték karakterrel elválasztott listája jelöl. A tulajdonságértékek sztringekké alakulnak az objektum ToString() metódusával. A sztringeket a tulajdonságérték neve jelöli.
ConvertTo-Csv nem exportálja az objektum metódusát.
A CSV-sztringek kimenete a következő:
- Alapértelmezés szerint az első sztring tartalmazza a #TYPE információs fejlécet, majd az objektumtípus teljes nevét. Például #TYPE System.Diagnostics.Process.
- Ha NoTypeInformation van használva, az első sztring tartalmazza az oszlopfejléceket. A fejlécek vesszővel tagolt listaként tartalmazzák az első objektum tulajdonságneveit.
- A többi sztring az egyes objektumok tulajdonságértékeinek vesszővel tagolt listáját tartalmazza.
Ha több objektumot küld el a ConvertTo-Csv, ConvertTo-Csv az első beküldendő objektum tulajdonságai alapján rendeli meg a sztringeket. Ha a többi objektum nem rendelkezik a megadott tulajdonságok egyikével, akkor az objektum tulajdonságértéke Null, amelyet két egymást követő vessző jelöl. Ha a többi objektum további tulajdonságokkal rendelkezik, a rendszer figyelmen kívül hagyja ezeket a tulajdonságértékeket.