Compartilhar via


ConvertTo-CSV

Converte objetos Microsoft .NET Framework em uma série de cadeias de caracteres CSV de tamanho variável.

Sintaxe

ConvertTo-CSV [[-Delimitador] <char>] [-InputObject] <psobject> [-NoTypeInformation] [<CommonParameters>]

ConvertTo-CSV [-UseCulture] [-InputObject] <psobject> [-NoTypeInformation] [<CommonParameters>]

Descrição

O cmdlet ConvertTo-CSV retorna uma série de cadeias de caracteres CSV de tamanho variável que representa os objetos enviados. Em seguida, é possível usar o cmdlet ConvertFrom-CSV para recriar objetos a partir das cadeias de caracteres CSV. Os objetos resultantes são versões CSV dos objetos originais que consistem em representações de cadeia de caracteres dos valores de propriedade e nenhum método.

Também é possível usar os cmdlets Export-CSV e Import-CSV para converter objetos do .NET Framework em cadeias de caracteres CSV (e vice-versa). Export-CSV é igual a ConvertTo-CSV, com a exceção de que ele salva as cadeias de caracteres CSV em um arquivo.

É possível usar os parâmetros do cmdlet ConvertTo-CSV para especificar um delimitador diferente de uma vírgula ou direcionar o ConvertTo-CSV para usar o delimitador padrão da cultura atual.

Para obter mais informações, consulte Export-CSV e a seção Observações.

Parâmetros

-Delimitador <char>

Especifica um delimitador para separar os valores de propriedade. O padrão é uma vírgula (,). Digite um caractere, como dois pontos (:).

Para especificar um ponto-e-vírgula (;), coloque-o entre aspas. Caso contrário, ele será interpretado como o delimitador de comandos.

Necessário?

false

Posição?

2

Valor padrão

, (vírgula)

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-InputObject <psobject>

Especifica os objetos a serem exportados como cadeias de caracteres CSV. Insira uma variável que contenha os objetos ou digite um comando ou expressão que obtenha os objetos. Também é possível enviar objetos para ConvertTo-CSV.

Necessário?

true

Posição?

1

Valor padrão

Aceitar entrada do pipeline?

true (ByValue, ByPropertyName)

Aceitar caracteres curinga?

false

-NoTypeInformation

Omite o cabeçalho de informações de tipo da saída. Por padrão, a cadeia de caracteres na saída contém "#TYPE" seguido pelo nome totalmente qualificado do tipo do objeto .NET Framework.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-UseCulture

Usa o separador de lista da cultura atual como o delimitador de dados. O padrão é uma vírgula (,).

Esse parâmetro é muito útil em scripts que estão sendo distribuídos mundialmente aos usuários. Para localizar o separador de lista de uma cultura, use o comando a seguir: (Get-Culture).TextInfo.ListSeparator.

Necessário?

false

Posição?

named

Valor padrão

Vírgula

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

<CommonParameters>

Esse cmdlet oferece suporte aos parâmetros comuns: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Para obter mais informações, consulte about_Commonparameters.

Entradas e saídas

O tipo de entrada é o tipo dos objetos que você pode canalizar para o cmdlet. O tipo de retorno é o tipo dos objetos que o cmdlet retorna.

Entradas

System.Management.Automation.PSObject

É possível enviar qualquer objeto do .NET Framework para ConvertTo-CSV.

Saídas

System.String

A saída de CSV é retornada como uma coleção de cadeias de caracteres.

Observações

No formato CSV, cada objeto é representado por uma lista separada por vírgulas dos valores de suas propriedades. Os valores de propriedade são convertidos em cadeias de caracteres (usando o método ToString() do objeto), de forma que eles geralmente são representados pelo nome do valor da propriedade. O ConvertTo-CSV não exporta os métodos do objeto.

O formato das cadeias de caracteres CSV resultantes é o seguinte:

-- A primeira cadeia de caracteres consiste em '#TYPE' seguido pelo nome totalmente qualificado do tipo .NET Framework do objeto, como #TYPE System.Diagnostics.Process. Para suprimir essa cadeia de caracteres, use o parâmetro NoTypeInformation.

-- A próxima cadeia de caracteres representa os cabeçalhos de coluna. Ela contém uma lista separada por vírgulas dos nomes de todas as propriedades do primeiro objeto.

-- As cadeias de caracteres restantes consistem em listas separadas por vírgulas dos valores de propriedade de cada objeto.

Quando você envia vários objetos ao ConvertTo-CSV, o ConvertTo-CSV ordena as cadeias de caracteres com base nas propriedades do primeiro objeto enviado. Se os objetos restantes não tiverem uma das propriedades especificadas, o valor da propriedade daquele objeto será nulo, conforme representado por duas vírgulas consecutivas. Se os objetos restantes tiverem propriedades adicionais, esses valores de propriedade serão ignorados.

Exemplo 1

C:\PS>get-process powershell | convertto-csv

#TYPE System.Diagnostics.Process
"__NounName","Name","Handles","VM","WS","PM","NPM","Path","Company","CPU","FileVersion","ProductVersion","Description",
"Product","BasePriority","ExitCode","HasExited","ExitTime","Handle","HandleCount","Id","MachineName","MainWindowHandle"
,"MainWindowTitle","MainModule","MaxWorkingSet","MinWorkingSet","Modules","NonpagedSystemMemorySize","NonpagedSystemMem
orySize64","PagedMemorySize","PagedMemorySize64","PagedSystemMemorySize","PagedSystemMemorySize64","PeakPagedMemorySize
","PeakPagedMemorySize64","PeakWorkingSet","PeakWorkingSet64","PeakVirtualMemorySize","PeakVirtualMemorySize64","Priori
tyBoostEnabled","PriorityClass","PrivateMemorySize","PrivateMemorySize64","PrivilegedProcessorTime","ProcessName","Proc
essorAffinity","Responding","SessionId","StartInfo","StartTime","SynchronizingObject","Threads","TotalProcessorTime","U
serProcessorTime","VirtualMemorySize","VirtualMemorySize64","EnableRaisingEvents","StandardInput","StandardOutput","Sta
ndardError","WorkingSet","WorkingSet64","Site","Container"
"Process","powershell","216","597544960","60399616","63197184","21692","C:\WINDOWS\system32\WindowsPowerShell\v1.0\powe
rshell.exe","Microsoft Corporation","3.4788223","6.1.6587.1 (fbl_srv_powershell(nigels).070711-0102)","6.1.6587.1","Win
dows PowerShell","Microsoft® Windows® Operating System","8",,"False",,"860","216","5132",".","5636936","Windows PowerSh
ell 2.0 (04/17/2008 00:10:40)","System.Diagnostics.ProcessModule (powershell.exe)","1413120","204800","System.Diagnosti
cs.ProcessModuleCollection","21692","21692","63197184","63197184","320080","320080","63868928","63868928","60715008","6
0715008","598642688","598642688","True","Normal","63197184","63197184","00:00:00.2028013","powershell","15","True","1",
"System.Diagnostics.ProcessStartInfo","4/21/2008 3:49:19 PM",,"System.Diagnostics.ProcessThreadCollection","00:00:03.51
00225","00:00:03.3072212","597544960","597544960","False",,,,"60399616","60399616",,

Descrição
-----------
Esse comando converte um único objeto de processo no formato CSV. O comando usa o cmdlet Get-Process para obter o processo do PowerShell no computador local. Ele usa um operador de pipeline (|) para enviar o comando para o cmdlet ConvertTo-CSV que o converte em uma série de cadeias de caracteres separadas por vírgula.





Exemplo 2

C:\PS>$date = get-date

C:\PS> convertto-csv -inputobject $date -delimiter ";" -notypeinformation

Descrição
-----------
Esse exemplo converte um objeto de data no formato CSV. 

O primeiro comando usa o cmdlet Get-Date para obter a data atual. Ele salva a data na variável $date. 

O segundo comando usa o cmdlet ConvertTo-CSV para converter o objeto DateTime na variável $date no formato CSV. O comando usa o parâmetro InputObject para especificar o objeto a ser convertido. Ele usa o parâmetro Delimiter para especificar o delimitador que separa as propriedades do objeto. Ele usa o parâmetro NoTypeInformation para suprimir a cadeia de caracteres #TYPE.





Exemplo 3

C:\PS>get-eventlog -log "windows powershell" | convertto-csv -useculture

Descrição
-----------
Esse comando converte o log de eventos do Windows PowerShell no computador local em uma série de cadeias de caracteres CSV. 

O comando usa o cmdlet Get-EventLog para obter os eventos no log de eventos do Windows PowerShell. Um operador de pipeline (|) envia os eventos para o cmdlet ConvertTo-CSV que os converte no formato CSV. O comando usa o parâmetro UseCulture que usa o separador de lista da cultura atual como o delimitador.





Consulte também

Conceitos

Import-CSV
Export-CSV
ConvertFrom-CSV