ConvertFrom-Csv

Karakterekkel tagolt (CSV) formátumban konvertálja az objektumtulajdonságokat az eredeti objektumok CSV-verzióivá.

Syntax

ConvertFrom-Csv
                [[-Delimiter] <Char>]
                [-InputObject] <PSObject[]>
                [-Header <String[]>]
                [<CommonParameters>]
ConvertFrom-Csv
                -UseCulture
                [-InputObject] <PSObject[]>
                [-Header <String[]>]
                [<CommonParameters>]

Description

A ConvertFrom-Csv parancsmag a karakterekkel tagolt értékeket (CSV) PSObject típusú objektumokká alakítja a CSV-adatok minden sorához. Az új objektumok a CSV-adatokból való olvasásuk sorrendjében kerülnek a folyamatba. A CSV oszlopfejlécének értékei lesznek az egyes új PSObject-hez hozzáadott tulajdonságok nevei.

A létrehozott objektumok ConvertFrom-CsvPSObject típusú objektumok a CSV-fájl minden sorához. A CSV-objektumok tulajdonságértékei az eredeti objektumok tulajdonságértékeinek sztringverziói. Az objektumok CSV-verziói nem rendelkeznek metódusokkal.

A és Import-Csv a Export-Csv parancsmagok használatával is átalakíthatja az objektumokat CSV-sztringekké egy fájlban és vissza. Ezek a parancsmagok megegyeznek a és ConvertFrom-Csv a ConvertTo-Csv parancsmagokkal, azzal a kivételrel, hogy a CSV-sztringeket egy fájlba menti.

A PSObject típus megtartja a tulajdonságok sorrendjét az oszlopfejlécek sorrendjében. Ez azt jelenti, hogy ugyanazt az oszlopsorrendet kapja, amikor az objektumokat CSV formátumba konvertálja.

Példák

1. példa: A helyi számítógépen lévő folyamatok konvertálása CSV formátumba

Ez a példa bemutatja, hogyan konvertálhatja a helyi számítógépen lévő folyamatokat CSV formátumba, majd állíthatja vissza őket objektuműrlapra.

$P = Get-Process | ConvertTo-Csv
$P | ConvertFrom-Csv

A Get-Process parancsmag elküldi a folyamat folyamatait a következőnek ConvertTo-Csv: . A ConvertTo-Csv parancsmag CSV-sztringek sorozatává alakítja a folyamatobjektumokat. A ConvertFrom-Csv parancsmag átalakítja a CSV-sztringeket az eredeti folyamatobjektumok CSV-verzióivá. A CSV-sztringeket a rendszer a $P változóba menti.

2. példa: Adatobjektum konvertálása CSV formátumra, majd CSV-objektumformátumra

Ez a példa bemutatja, hogyan konvertálhat egy adatobjektumot CSV formátumba, majd hogyan alakíthatja át CSV-objektumformátumra.

$Date = Get-Date | ConvertTo-Csv -Delimiter ';'
ConvertFrom-Csv -InputObject $Date -Delimiter ';'

Az első parancs az Get-Date aktuális dátumot és időt küldi le a folyamatról a következő címre ConvertTo-Csv: . A ConvertTo-Csv parancsmag CSV-sztringek sorozatává alakítja a dátumobjektumot. Az Elválasztó paraméter pontosvesszőt ad meg. A sztringek a $Date változóba lesznek mentve.

3. példa: A tulajdonságok nevének módosítása a fejlécparaméter használatával

Ez a példa bemutatja, hogyan módosíthatja a tulajdonságok nevét az eredményként kapott importált objektum Fejléc paraméterével ConvertFrom-Csv .

$J = Start-Job -ScriptBlock { Get-Process } | ConvertTo-Csv  -NoTypeInformation
$Header = 'State', 'MoreData', 'StatusMessage', 'Location', 'Command',
          'StateInfo', 'Finished', 'InstanceId', 'Id', 'Name', 'ChildJobs',
          'BeginTime', 'EndTime', 'JobType', 'Output', 'Error', 'Progress',
          'Verbose', 'Debug', 'Warning', 'Information'
# Delete the default header from $J
$J = $J[1..($J.count - 1)]
$J | ConvertFrom-Csv -Header $Header

State         : Running
MoreData      : True
StatusMessage :
Location      : localhost
Command       : Get-Process
StateInfo     : Running
Finished      : System.Threading.ManualResetEvent
InstanceId    : a259eb63-6824-4b97-a033-305108ae1c2e
Id            : 1
Name          : Job1
ChildJobs     : System.Collections.Generic.List`1[System.Management.Automation.Job]
BeginTime     : 12/20/2018 18:59:57
EndTime       :
JobType       : BackgroundJob
Output        : System.Management.Automation.PSDataCollection`1[System.Management.Automation.PSObject]
Error         : System.Management.Automation.PSDataCollection`1[System.Management.Automation.ErrorRecord]
Progress      : System.Management.Automation.PSDataCollection`1[System.Management.Automation.ProgressRecord]
Verbose       : System.Management.Automation.PSDataCollection`1[System.Management.Automation.VerboseRecord]
Debug         : System.Management.Automation.PSDataCollection`1[System.Management.Automation.DebugRecord]
Warning       : System.Management.Automation.PSDataCollection`1[System.Management.Automation.WarningRecord]
Information   : System.Management.Automation.PSDataCollection`1[System.Management.Automation.InformationRecord]

A Start-Job parancsmag elindít egy háttérfeladatot, amely futtatja a parancsmagot Get-Process. A feladatobjektumot a rendszer elküldi a folyamatnak, ConvertTo-Csv és CSV-sztringgé alakítja. A NoTypeInformation paraméter eltávolítja a típusinformációs fejlécet a CSV-kimenetből, és nem kötelező a PowerShell 6-os vagy újabb verziójában. A $Header változó egy egyéni fejlécet tartalmaz, amely a következő alapértelmezett értékeket váltja fel: HasMoreData, JobStateInfo, PSBeginTime, PSEndTime és PSJobTypeName. A $J változó tartalmazza a CSV-sztringet, és az alapértelmezett fejléc eltávolítására szolgál. A ConvertFrom-Csv parancsmag PSCustomObject sztringgé alakítja át a CSV-sztringet, és a Header paraméterrel alkalmazza a változót $Header .

4. példa: Szolgáltatásobjektumok CSV-sztringjeinek konvertálása

Ez a példa bemutatja, hogyan használható a ConvertFrom-Csv parancsmag a UseCulture paraméterrel.

(Get-Culture).TextInfo.ListSeparator
$Services = (Get-Service | ConvertTo-Csv)
ConvertFrom-Csv -InputObject $Services -UseCulture

A Get-Culture parancsmag a TextInfo és a ListSeparator beágyazott tulajdonságokat használja az aktuális kulturális környezet alapértelmezett listaelválasztójának lekéréséhez. A Get-Service parancsmag szolgáltatásobjektumokat küld a folyamaton keresztül a következőnek ConvertTo-Csv: . A ConvertTo-Csv a szolgáltatásobjektumokat CSV-sztringek sorozatává alakítja. A CSV-sztringek a $Services változóban vannak tárolva. A ConvertFrom-Csv parancsmag az InputObject paramétert használja, és átalakítja a CSV-sztringeket a $Services változóból. A UseCulture paraméter az aktuális kulturális környezet alapértelmezett listaelválasztóját használja.

A UseCulture paraméter használatakor győződjön meg arról, hogy az aktuális kulturális környezet alapértelmezett listaelválasztója megegyezik a CSV-sztringekben használt elválasztóval. ConvertFrom-Csv Ellenkező esetben nem lehet objektumokat létrehozni a CSV-sztringekből.

Paraméterek

-Delimiter

Megadja a CSV-sztringek tulajdonságértékeit elválasztó elválasztó karaktert. Az alapértelmezett érték egy vessző (,). Írjon be egy karaktert, például kettőspontot (:). Ha pontosvesszőt (;) szeretne megadni, azt szimpla idézőjelek közé kell tenni.

Ha a fájlban a tényleges sztringelválasztótól eltérő karaktert ad meg, nem tudja létrehozni az objektumokat a CSV-sztringekből, ConvertFrom-Csv és a CSV-sztringeket adja vissza.

Type:Char
Position:1
Default value:comma (,)
Accept pipeline input:False
Accept wildcard characters:False

-Header

Egy alternatív oszlopfejlécsort ad meg az importált sztringhez. Az oszlopfejléc határozza meg a által ConvertFrom-Csvlétrehozott objektumok tulajdonságneveit.

Írja be az oszlopfejléceket karakterrel tagolt listaként. ne tegye idézőjelek közé a fejlécsztringet. Minden oszlopfejlécet egyetlen idézőjelbe kell tenni.

Ha kevesebb oszlopfejlécet ad meg, mint amennyi adatoszlop van, a többi adatoszlop el lesz vetve. Ha több oszlopfejlécet ad meg, mint amennyi adatoszlop van, a további oszlopfejlécek üres adatoszlopokkal jönnek létre.

A Header paraméter használatakor hagyja ki az oszlopfejléc sztringet a CSV-sztringekből. Ellenkező esetben ez a parancsmag egy további objektumot hoz létre a fejlécsor elemeiből.

Type:String[]
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Megadja az objektumokká konvertálandó CSV-sztringeket. Adjon meg egy változót, amely tartalmazza a CSV-sztringeket, vagy írjon be egy parancsot vagy kifejezést, amely lekéri a CSV-sztringeket. A CSV-sztringeket a következőre is átirányíthatja: ConvertFrom-Csv.

Type:PSObject[]
Position:0
Default value:None
Accept pipeline input:True
Accept wildcard characters:False

-UseCulture

Az aktuális kulturális környezet listaelválasztóját használja elválasztó elemként. Egy kulturális környezet listaelválasztójának megkereséséhez használja a következő parancsot: (Get-Culture).TextInfo.ListSeparator.

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

Bevitelek

String

CsV-sztringeket erre a parancsmagra helyezhet.

Kimenetek

PSObject

Ez a parancsmag a CSV-sztringek tulajdonságai által leírt objektumokat adja vissza.

Jegyzetek

CSV formátumban minden objektumot az objektum tulajdonságértékeinek karakterrel tagolt listája jelöl. A tulajdonságértékeket a rendszer sztringekké alakítja az ToString() objektum metódusával. Az objektum metódusait nem lehet exportálni.