Partilhar via


ConvertTo-Html

Converte objetos do Microsoft .NET Framework em HTML que podem ser exibidos em um navegador da Web.

Sintaxe

Page (Predefinição)

ConvertTo-Html
    [[-Property] <Object[]>]
    [[-Body] <String[]>]
    [[-Head] <String[]>]
    [[-Title] <String>]
    [-InputObject <PSObject>]
    [-As <String>]
    [-CssUri <Uri>]
    [-PostContent <String[]>]
    [-PreContent <String[]>]
    [<CommonParameters>]

Fragment

ConvertTo-Html
    [[-Property] <Object[]>]
    [-InputObject <PSObject>]
    [-As <String>]
    [-Fragment]
    [-PostContent <String[]>]
    [-PreContent <String[]>]
    [<CommonParameters>]

Description

O cmdlet ConvertTo-Html converte objetos do .NET Framework em HTML que podem ser exibidos em um navegador da Web. Você pode usar esse cmdlet para exibir a saída de um comando em uma página da Web.

Você pode usar os parâmetros de ConvertTo-Html para selecionar propriedades de objeto, especificar um formato de tabela ou lista, especificar o título da página HTML, adicionar texto antes e depois do objeto e retornar apenas a tabela ou o fragmento de lista, em vez de uma página DTD restrita.

Quando você envia vários objetos para ConvertTo-Html, o Windows PowerShell cria a tabela, ou uma lista, com base nas propriedades do primeiro objeto enviado. Se os objetos restantes não tiverem uma das propriedades especificadas, o valor da propriedade desse objeto será uma célula vazia. Se os objetos restantes tiverem propriedades adicionais, esses valores de propriedade não serão incluídos no arquivo.

Exemplos

Exemplo 1: Criar uma página Web para apresentar a data

PS C:\> ConvertTo-Html -InputObject (Get-Date)

Este comando cria uma página HTML que exibe as propriedades da data atual. Ele usa o parâmetro InputObject para enviar os resultados de um comando Get-Date para o cmdlet ConvertTo-Html.

Exemplo 2: Criar uma página da Web para exibir aliases do PowerShell

PS C:\> Get-Alias | ConvertTo-Html | Out-File aliases.htm
PS C:\> Invoke-Item aliases.htm

Este comando cria uma página HTML que lista os aliases do Windows PowerShell no console atual.

O comando usa o cmdlet Get-Alias para obter os aliases. Ele usa o operador de pipeline (|) para enviar os aliases para o cmdlet ConvertTo-Html, que cria a página HTML. O comando também usa o cmdlet Out-File para enviar o código HTML para o arquivo aliases.htm.

Exemplo 3: Criar uma página da Web para exibir eventos do PowerShell

PS C:\> Get-EventLog -LogName "Windows PowerShell" | ConvertTo-Html | Out-File pslog.htm

Este comando cria uma página HTML chamada pslog.htm que exibe os eventos no log de eventos do Windows PowerShell no computador local.

Ele usa o cmdlet Get-EventLog para obter os eventos no log do Windows PowerShell e, em seguida, usa o operador de pipeline (|) para enviar os eventos para o cmdlet ConvertTo-Html.

O comando também usa o cmdlet Out-File para enviar o código HTML para o arquivo pslog.htm.

Exemplo 4: Criar uma página da Web para exibir processos

PS C:\> Get-Process | ConvertTo-Html -Property Name, Path, Company -Title "Process Information" | Out-File proc.htm; ii proc.htm

Esses comandos criam e abrem uma página HTML que lista o nome, o caminho e a empresa dos processos no computador local.

O primeiro comando usa o cmdlet Get-Process para obter objetos que representam os processos em execução no computador. O comando usa o operador de pipeline (|) para enviar os objetos de processo para o cmdlet ConvertTo-Html.

O comando usa o parâmetro Property para selecionar três propriedades dos objetos de processo a serem incluídos na tabela. O comando usa o parâmetro Title para especificar um título para a página HTML. O comando também usa o cmdlet Out-File para enviar o HTML resultante para um arquivo chamado Proc.htm.

O segundo comando usa o cmdlet Invoke-Item (alias = ii) para abrir o Proc.htm no navegador padrão. Os dois comandos são separados por um ponto-e-vírgula (;).

Exemplo 5: Criar uma página da Web para exibir objetos de serviço

PS> get-service | convertto-html -CssUri "test.css"
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  "https://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>HTML TABLE</title>
<link rel="stylesheet" type="text/css" href="test.css" />
...

Este comando cria uma página HTML dos objetos de serviço que o cmdlet Get-Service retorna. O comando usa o parâmetro CssUri para especificar uma folha de estilos em cascata para a página HTML.

O parâmetro CssUri adiciona um link de <adicional rel="stylesheet" type="text/css"/ href="test.css"> tag ao HTML resultante. O atributo HREF na tag contém o nome da folha de estilos.

Exemplo 6: Criar uma página da Web para exibir objetos de serviço

PS C:\> Get-Service | ConvertTo-Html -As LIST | Out-File services.htm

Este comando cria uma página HTML dos objetos de serviço que o cmdlet Get-Service retorna. O comando usa o parâmetro As para especificar um formato de lista. O cmdlet Out-File envia o HTML resultante para o arquivo Services.htm.

Exemplo 7: Criar uma tabela da Web para a data atual

PS C:\> Get-Date | cth -Fragment
<table>
<colgroup>...</colgroup>
<tr><th>DisplayHint</th><th>DateTime</th><th>Date</th><th>Day</th><th>DayOfWeek</th><th>DayOfYear</th><th>Hour</th>
<th>Kind</th><th>Millisecond</th><th>Minute</th><th>Month</th><th>Second</th><th>Ticks</th><th>TimeOfDay</th><th>Year</th></tr>
<tr><td>DateTime</td><td>Monday, May 05, 2008 10:40:04 AM</td><td>5/5/2008 12:00:00 AM</td><td>5</td><td>Monday</td>
<td>126</td><td>10</td><td>Local</td><td>123</td><td>40</td><td>5</td><td>4</td><td>633455808041237213</td><td>10:40:04.12
37213</td><td>2008</td></tr>
</table>

Este comando usa ConvertTo-Html para gerar uma tabela HTML da data atual. O comando usa o cmdlet Get-Date para obter a data atual. Ele usa um operador de pipeline (|) para enviar os resultados para o cmdlet ConvertTo-Html (aliased como cth).

O comando ConvertTo-Html inclui o parâmetro Fragment, que limita a saída a uma tabela HTML. Como resultado, os outros elementos de uma página HTML, como as tags <HEAD> e <BODY>, são omitidos.

Exemplo 8: Criar uma página da Web para exibir eventos do PowerShell

PS C:\> Get-EventLog -Log "Windows PowerShell" | ConvertTo-Html -Property id, level, task

Este comando usa o cmdlet Get-EventLog para obter eventos do log de eventos do Windows PowerShell.

Ele usa um operador de pipeline (|) para enviar os eventos para o cmdlet ConvertTo-Html, que converte os eventos para o formato HTML.

O comando ConvertTo-Html usa o parâmetro Property para selecionar apenas as propriedades ID, Level e Task do evento.

Exemplo 9: Criar uma página da Web para exibir serviços especificados

PS C:\> Get-Service A* | ConvertTo-Html -Title "Windows Services: Server01" -Body (get-date) -Pre
"<P>Generated by Corporate IT</P>" -Post "For details, contact Corporate IT." | Out-File services.htm; ii services.htm

Este comando cria e abre uma página Web que apresenta os serviços no computador que começam com A. Ele usa o Title, Body, PreContente PostContent parâmetros de ConvertTo-Html para personalizar a saída.

A primeira parte do comando usa o cmdlet Get-Service para obter os serviços no computador que começam com A. O comando usa um operador de pipeline (|) para enviar os resultados para o cmdlet ConvertTo-Html. O comando também usa o cmdlet Out-File para enviar a saída para o arquivo Services.htm.

Um ponto-e-vírgula (;) termina o primeiro comando e inicia um segundo comando, que usa o cmdlet Invoke-Item (alias = "ii") para abrir o arquivo Services.htm no navegador padrão.

Parâmetros

-As

Especifica se o objeto está formatado como uma tabela ou uma lista. Os valores aceitáveis para este parâmetro são: Tabela e Lista. O valor padrão é Table.

O valor Table gera uma tabela HTML semelhante ao formato de tabela do Windows PowerShell. A linha de cabeçalho exibe os nomes das propriedades. Cada linha da tabela representa um objeto e exibe os valores do objeto para cada propriedade.

O valor List gera uma tabela HTML de duas colunas para cada objeto semelhante ao formato de lista do Windows PowerShell. A primeira coluna exibe o nome da propriedade; A segunda coluna exibe o valor da propriedade.

Propriedades dos parâmetros

Tipo:String
Default value:None
Valores aceites:Table, List
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-Body

Especifica o texto, como uma matriz, a ser adicionado após a abertura <marca BODY>. Por padrão, não há texto nessa posição.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

Page
Position:3
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-CssUri

Especifica o URI (Uniform Resource Identifier) da folha de estilos em cascata (CSS) que é aplicada ao arquivo HTML. O URI é incluído em um link de folha de estilos na saída.

Propriedades dos parâmetros

Tipo:Uri
Default value:None
Suporta carateres universais:False
NãoMostrar:False
Aliases:Uc, URI

Conjuntos de parâmetros

Page
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-Fragment

Indica que esse cmdlet gera apenas uma tabela HTML. As tags HTML, HEAD, TITLE e BODY são omitidas.

Propriedades dos parâmetros

Tipo:SwitchParameter
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

Fragment
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-Head

Especifica o conteúdo da marca <HEAD> como uma matriz. O padrão é <título>HTML TABLE</title>. Se você usar o parâmetro Head, o parâmetro Title será ignorado.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

Page
Position:1
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-InputObject

Especifica os objetos a serem representados em HTML. Insira uma variável que contenha os objetos ou digite um comando ou expressão que obtenha os objetos.

Se você usar esse parâmetro para enviar vários objetos, como todos os serviços em um computador, ConvertTo-Html criará uma tabela que exibe as propriedades de uma coleção ou de uma matriz de objetos (System.Object[]). Para criar uma tabela dos objetos individuais, use o operador de pipeline para canalizar os objetos para ConvertTo-Html.

Propriedades dos parâmetros

Tipo:PSObject
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:True
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-PostContent

Especifica o texto a ser adicionado após o fechamento <a tag /TABLE>. Por padrão, não há texto nessa posição.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-PreContent

Especifica uma matriz de texto a ser adicionada antes da abertura <marca TABLE>. Por padrão, não há texto nessa posição.

Propriedades dos parâmetros

Tipo:

String[]

Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-Property

Especifica as propriedades dos objetos no HTML. O valor do parâmetro Property pode ser uma nova propriedade calculada. Para criar uma propriedade calculada, use uma tabela de hash. As chaves válidas são:

  • Rótulo <cadeia de caracteres> (ao contrário do que acontece com Select-Object ou Format-Table, a chave Name não é suportada)
  • Expressão <cadeia de caracteres> ou <bloco de script>

Propriedades dos parâmetros

Tipo:

Object[]

Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:0
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-Title

Especifica um título para o arquivo HTML, ou seja, o texto que aparece entre as tags <TITLE>.

Propriedades dos parâmetros

Tipo:String
Default value:None
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

Page
Position:2
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

PSObject

Você pode canalizar qualquer objeto .NET para ConvertTo-Html.

Saídas

System.String or System.Xml.XmlDocument

Este cmdlet retorna uma série de cadeias de caracteres que compõem HTML válido.

Notas

  • Para usar esse cmdlet, canalize um ou mais objetos para o cmdlet ou use o parâmetro InputObject para especificar o objeto. Quando a entrada consiste em vários objetos, a saída desses dois métodos é bastante diferente.

    • Quando você canaliza vários objetos para um cmdlet, o Windows PowerShell envia os objetos para o cmdlet um de cada vez. Como resultado, ConvertTo-Html cria uma tabela que exibe os objetos individuais. Por exemplo, se você canalizar os processos em um computador para ConvertTo-Html , a tabela resultante exibirá todos os processos.

    • Quando você usa o parâmetro InputObject para enviar vários objetos, ConvertTo-Html recebe esses objetos como uma coleção ou como uma matriz. Como resultado, ele cria uma tabela que exibe a matriz e suas propriedades, não os itens na matriz. Por exemplo, se você usar InputObject para enviar os processos em um computador para ConvertTo-Html , a tabela resultante exibirá uma matriz de objetos (System.Object[]) e suas propriedades.

    Para estar em conformidade com o XHTML Strict DTD, a tag DOCTYPE é modificada de acordo:

    (<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">)