Share via


ConvertTo-Html

Converteert .NET-objecten naar HTML die kunnen worden weergegeven in een webbrowser.

Syntax

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

Description

Met de ConvertTo-Html cmdlet worden .NET-objecten geconverteerd naar HTML die kunnen worden weergegeven in een webbrowser. U kunt deze cmdlet gebruiken om de uitvoer van een opdracht op een webpagina weer te geven.

U kunt de parameters van ConvertTo-Html gebruiken om objecteigenschappen te selecteren, om een tabel- of lijstindeling op te geven, om de HTML-paginatitel op te geven, om tekst voor en na het object toe te voegen en om alleen de tabel of het lijstfragment te retourneren, in plaats van een strikte DTD-pagina.

Wanneer u meerdere objecten verzendt naar ConvertTo-Html, maakt PowerShell de tabel (of lijst) op basis van de eigenschappen van het eerste object dat u verzendt. Als de resterende objecten geen van de opgegeven eigenschappen hebben, is de eigenschapswaarde van dat object een lege cel. Als de resterende objecten aanvullende eigenschappen hebben, worden deze eigenschapswaarden niet opgenomen in het bestand.

Voorbeelden

Voorbeeld 1: Creatie een webpagina om de datum weer te geven

ConvertTo-Html -InputObject (Get-Date)

Met deze opdracht maakt u een HTML-pagina waarop de eigenschappen van de huidige datum worden weergegeven. De parameter InputObject wordt gebruikt om de resultaten van een Get-Date opdracht naar de ConvertTo-Html cmdlet te verzenden.

Voorbeeld 2: een webpagina Creatie om PowerShell-aliassen weer te geven

Get-Alias | ConvertTo-Html | Out-File aliases.htm
Invoke-Item aliases.htm

Met deze opdracht maakt u een HTML-pagina met de PowerShell-aliassen in de huidige console.

De opdracht gebruikt de Get-Alias cmdlet om de aliassen op te halen. De pijplijnoperator (|) wordt gebruikt om de aliassen te verzenden naar de ConvertTo-Html cmdlet, waarmee de HTML-pagina wordt gemaakt. De opdracht gebruikt ook de Out-File cmdlet om de HTML-code naar het aliases.htm bestand te verzenden.

Voorbeeld 3: Creatie een webpagina om PowerShell-gebeurtenissen weer te geven

Get-EventLog -LogName "Windows PowerShell" | ConvertTo-Html | Out-File pslog.htm

Met deze opdracht maakt u een HTML-pagina met de naam pslog.htm waarop de gebeurtenissen in het Windows PowerShell gebeurtenislogboek op de lokale computer worden weergegeven.

De cmdlet wordt gebruikt Get-EventLog om de gebeurtenissen in het logboek van de Windows PowerShell op te halen en gebruikt vervolgens de pijplijnoperator (|) om de gebeurtenissen naar de ConvertTo-Html cmdlet te verzenden. De opdracht gebruikt ook de Out-File cmdlet om de HTML-code naar het pslog.htm bestand te verzenden.

De opdracht gebruikt ook de Out-File cmdlet om de HTML-code naar het pslog.htm bestand te verzenden.

Voorbeeld 4: een webpagina Creatie om processen weer te geven

Get-Process |
  ConvertTo-Html -Property Name, Path, Company -Title "Process Information" |
    Out-File proc.htm
Invoke-Item proc.htm

Met deze opdrachten wordt een HTML-pagina gemaakt en geopend waarop de naam, het pad en het bedrijf van de processen op de lokale computer worden vermeld.

De eerste opdracht gebruikt de Get-Process cmdlet om objecten op te halen die de processen vertegenwoordigen die op de computer worden uitgevoerd. De opdracht gebruikt de pijplijnoperator (|) om de procesobjecten naar de ConvertTo-Html cmdlet te verzenden.

De opdracht gebruikt de parameter Eigenschap om drie eigenschappen te selecteren van de procesobjecten die in de tabel moeten worden opgenomen. De opdracht gebruikt de parameter Title om een titel op te geven voor de HTML-pagina. De opdracht gebruikt ook de Out-File cmdlet om de resulterende HTML te verzenden naar een bestand met de naam Proc.htm.

De tweede opdracht gebruikt de Invoke-Item cmdlet om de Proc.htm te openen in de standaardbrowser.

Voorbeeld 5: een webpagina Creatie om serviceobjecten weer te geven

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" />
...

Met deze opdracht maakt u een HTML-pagina van de serviceobjecten die door de Get-Service cmdlet worden geretourneerd. De opdracht gebruikt de parameter CssUri om een trapsgewijs opmaakmodel voor de HTML-pagina op te geven.

Met de parameter CssUri wordt een extra <link rel="stylesheet" type="text/css" href="test.css"> tag toegevoegd aan de resulterende HTML. Het HREF-kenmerk in de tag bevat de naam van het opmaakmodel.

Voorbeeld 6: een webpagina Creatie om serviceobjecten weer te geven

Get-Service | ConvertTo-Html -As LIST | Out-File services.htm

Met deze opdracht maakt u een HTML-pagina van de serviceobjecten die door de Get-Service cmdlet worden geretourneerd. De opdracht gebruikt de parameter As om een lijstindeling op te geven. De cmdlet Out-File verzendt de resulterende HTML naar het Services.htm bestand.

Voorbeeld 7: een webtabel Creatie voor de huidige datum

Get-Date | ConvertTo-Html -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>

Met deze opdracht wordt een ConvertTo-Html HTML-tabel met de huidige datum gegenereerd. De opdracht gebruikt de Get-Date cmdlet om de huidige datum op te halen. Er wordt een pijplijnoperator () gebruikt| om de resultaten naar de ConvertTo-Html cmdlet te verzenden.

De ConvertTo-Html opdracht bevat de parameter Fragment , waarmee de uitvoer tot een HTML-tabel wordt beperkt. Als gevolg hiervan worden de andere elementen van een HTML-pagina, zoals de <HEAD> tags en <BODY> , weggelaten.

Voorbeeld 8: een webpagina Creatie om PowerShell-gebeurtenissen weer te geven

Get-EventLog -Log "Windows PowerShell" | ConvertTo-Html -Property id, level, task

Met deze opdracht wordt de Get-EventLog cmdlet gebruikt om gebeurtenissen op te halen uit het Windows PowerShell gebeurtenislogboek.

Er wordt een pijplijnoperator (|) gebruikt om de gebeurtenissen naar de ConvertTo-Html cmdlet te verzenden, die de gebeurtenissen converteert naar HTML-indeling.

De ConvertTo-Html opdracht maakt gebruik van de parameter Eigenschap om alleen de eigenschappen ID, Niveau en Taak van de gebeurtenis te selecteren.

Voorbeeld 9: Creatie een webpagina om de opgegeven services weer te geven

$htmlParams = @{
  Title = "Windows Services: Server01"
  Body = Get-Date
  PreContent = "<P>Generated by Corporate IT</P>"
  PostContent = "For details, contact Corporate IT."
}
Get-Service A* |
  ConvertTo-Html @htmlParams |
    Out-File Services.htm
Invoke-Item Services.htm

Met deze opdracht wordt een webpagina gemaakt en geopend waarop de services op de computer worden weergegeven die beginnen met A. De parameters Title, Body, PreContent en PostContent van ConvertTo-Html worden gebruikt om de uitvoer aan te passen.

Het eerste deel van de opdracht gebruikt de Get-Service cmdlet om de services op de computer op te halen die beginnen met A. De opdracht maakt gebruik van een pijplijnoperator (|) om de resultaten naar de ConvertTo-Html cmdlet te verzenden. De opdracht gebruikt ook de Out-File cmdlet om de uitvoer naar het Services.htm bestand te verzenden.

Een puntkomma (;) beëindigt de eerste opdracht en start een tweede opdracht, die de Invoke-Item cmdlet gebruikt om het Services.htm bestand te openen in de standaardbrowser.

Voorbeeld 10: De meta-eigenschappen en tekenset van de HTML instellen

Get-Service | ConvertTo-HTML -Meta @{
  refresh=10
  author="Author's Name"
  keywords="PowerShell, HTML, ConvertTo-HTML"
} -Charset "UTF-8"

Met deze opdracht maakt u de HTML voor een webpagina met de metatags voor vernieuwen, schrijven en trefwoorden. De tekenset voor de pagina is ingesteld op UTF-8

Voorbeeld 11: DE HTML instellen op XHTML Transition DTD

Get-Service | ConvertTo-HTML -Transitional

Met deze opdracht wordt de DOCTYPE van de geretourneerde HTML ingesteld op XHTML Transition DTD

Parameters

-As

Bepaalt of het object is opgemaakt als een tabel of een lijst. Geldige waarden zijn Tabel en Lijst. De standaardwaarde is Tabel.

Met de waarde Tabel wordt een HTML-tabel gegenereerd die lijkt op de PowerShell-tabelindeling. In de veldnamenrij worden de eigenschapsnamen weergegeven. Elke tabelrij vertegenwoordigt een object en geeft de waarden van het object voor elke eigenschap weer.

Met de waarde List wordt een HTML-tabel met twee kolommen gegenereerd voor elk object dat lijkt op de PowerShell-lijstindeling. In de eerste kolom wordt de naam van de eigenschap weergegeven. In de tweede kolom wordt de eigenschapswaarde weergegeven.

Type:String
Accepted values:Table, List
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Body

Hiermee geeft u de tekst die moet worden toegevoegd na de openingstag <BODY> . Standaard is er geen tekst op die positie.

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

-Charset

Hiermee geeft u tekst toe te voegen aan de openingstag <charset> . Standaard is er geen tekst op die positie.

Deze parameter is geïntroduceerd in PowerShell 6.0.

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

-CssUri

Hiermee geeft u de URI (Uniform Resource Identifier) van het trapsgewijze opmaakmodel (CSS) op dat wordt toegepast op het HTML-bestand. De URI is opgenomen in een opmaakmodelkoppeling in de uitvoer.

Type:Uri
Aliases:cu, uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Fragment

Hiermee wordt alleen een HTML-tabel gegenereerd. De <HTML>tags , <HEAD>, <TITLE>en <BODY> worden weggelaten.

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

-Head

Hiermee geeft u de inhoud van de <HEAD> tag op. De standaardwaarde is <title\>HTML TABLE</title>. Als u de parameter Head gebruikt, wordt de parameter Title genegeerd.

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

-InputObject

Hiermee geeft u de objecten die moeten worden weergegeven in HTML. Voer een variabele in die de objecten bevat of typ een opdracht of expressie waarmee de objecten worden opgehaald.

Als u deze parameter gebruikt om meerdere objecten te verzenden, zoals alle services op een computer, ConvertTo-Html maakt u een tabel waarin de eigenschappen van een verzameling of een matrix met objecten worden weergegeven. Als u een tabel van de afzonderlijke objecten wilt maken, gebruikt u de pijplijnoperator om de objecten door te slangen naar ConvertTo-Html.

Type:PSObject
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Meta

Hiermee geeft u tekst toe te voegen aan de openingstag <meta> . Standaard is er geen tekst op die positie.

Deze parameter is geïntroduceerd in PowerShell 6.0.

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

-PostContent

Hiermee geeft u tekst toe te voegen na de afsluitende </TABLE> tag. Standaard is er geen tekst op die positie.

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

-PreContent

Hiermee geeft u tekst op die moet worden toegevoegd vóór de openingstag <TABLE> . Standaard is er geen tekst op die positie.

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

-Property

Bevat de opgegeven eigenschappen van de objecten in de HTML. De waarde van de parameter Eigenschap kan een nieuwe berekende eigenschap zijn. De berekende eigenschap kan een scriptblok of een hash-tabel zijn. Geldige sleutel-waardeparen zijn:

  • Name (of label) - <string> (toegevoegd in PowerShell 6.x)
  • Expression - <string> Of <script block>
  • FormatString - <string>
  • Width - <int32> - moet groter zijn dan 0
  • Alignment- waarde kan , Centerof zijn LeftRight

Zie about_Calculated_Properties voor meer informatie.

Type:Object[]
Position:0
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Title

Hiermee geeft u een titel voor het HTML-bestand, dat wil gezegd, de tekst die tussen de <TITLE> tags wordt weergegeven.

Type:String
Position:2
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Transitional

Wijzigt de DOCTYPE in XHTML Transition DTD. De standaardwaarde DOCTYPE is XHTML Strict DTD.

Deze parameter is geïntroduceerd in PowerShell 6.0.

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

Invoerwaarden

PSObject

U kunt elk .NET-object doorspezen naar ConvertTo-Html.

Uitvoerwaarden

System.String or System.Xml.XmlDocument

ConvertTo-Html retourneert een reeks tekenreeksen waaruit geldige HTML bestaat.

Notities

Als u deze cmdlet wilt gebruiken, sluist u een of meer objecten door naar de cmdlet of gebruikt u de parameter InputObject om het object op te geven. Wanneer de invoer uit meerdere objecten bestaat, is de uitvoer van deze twee methoden heel verschillend.

  • Wanneer u meerdere objecten doorstuurt naar een cmdlet, worden de objecten door PowerShell één voor één naar de cmdlet verzonden. Als gevolg hiervan ConvertTo-Html maakt u een tabel waarin de afzonderlijke objecten worden weergegeven. Als u bijvoorbeeld de processen op een computer doorsluist naar ConvertTo-Html, worden in de resulterende tabel alle processen weergegeven.

  • Wanneer u de parameter InputObject gebruikt om meerdere objecten te verzenden, ConvertTo-Html ontvangt deze objecten als een verzameling of als een matrix. Als gevolg hiervan wordt een tabel gemaakt waarin de matrix en de eigenschappen worden weergegeven, niet de items in de matrix. Als u bijvoorbeeld InputObject gebruikt om de processen op een computer naar te verzenden, ConvertTo-Htmlwordt in de resulterende tabel een objectmatrix en de bijbehorende eigenschappen weergegeven.

    Om te voldoen aan de XHTML Strict DTD, wordt de DOCTYPE tag dienovereenkomstig gewijzigd:

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