Delen via


ConvertTo-Html

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

Syntaxis

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

Description

De cmdlet ConvertTo-Html converteert .NET Framework-objecten naar HTML die in een webbrowser kunnen worden weergegeven. 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, een tabel- of lijstindeling op te geven, de HTML-paginatitel op te geven, tekst voor en na het object toe te voegen en alleen het tabel- of lijstfragment te retourneren in plaats van een strikte DTD-pagina.

Wanneer u meerdere objecten naar ConvertTo-Html-verzendt, maakt Windows PowerShell de tabel of een 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: Een webpagina maken om de datum weer te geven

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

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

Voorbeeld 2: Een webpagina maken om PowerShell-aliassen weer te geven

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

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

De opdracht maakt gebruik van de Get-Alias cmdlet om de aliassen op te halen. Hierbij wordt de pijplijnoperator (|) gebruikt om de aliassen te verzenden naar de cmdlet ConvertTo-Html-, 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: Een webpagina maken om PowerShell-gebeurtenissen weer te geven

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

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

De cmdlet Get-EventLog wordt gebruikt om de gebeurtenissen op te halen in het Windows PowerShell-logboek en gebruikt vervolgens de pijplijnoperator (|) om de gebeurtenissen te verzenden naar de cmdlet ConvertTo-Html-.

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

Voorbeeld 4: Een webpagina maken om processen weer te geven

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

Met deze opdrachten maakt en opent u een HTML-pagina met de naam, het pad en het bedrijf van de processen op de lokale computer.

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

De opdracht maakt gebruik van de parameter Eigenschap om drie eigenschappen van de procesobjecten te selecteren die in de tabel moeten worden opgenomen. De opdracht gebruikt de parameter Titel 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 (alias = ii) om de Proc.htm te openen in de standaardbrowser. De twee opdrachten worden gescheiden door een puntkomma (;).

Voorbeeld 5: Een webpagina maken om serviceobjecten weer te geven

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

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.

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

Voorbeeld 6: Een webpagina maken om serviceobjecten weer te geven

PS C:\> 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 de resulterende HTML naar het Services.htm-bestand verzendt.

Voorbeeld 7: Een webtabel maken voor de huidige datum

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>

Deze opdracht maakt gebruik van ConvertTo-Html- om een HTML-tabel van de huidige datum te genereren. De opdracht gebruikt de Get-Date cmdlet om de huidige datum op te halen. Er wordt een pijplijnoperator (|) gebruikt om de resultaten te verzenden naar de cmdlet ConvertTo-Html- (alias cth).

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

Voorbeeld 8: Een webpagina maken om PowerShell-gebeurtenissen weer te geven

PS C:\> 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 te verzenden naar de cmdlet ConvertTo-Html-, waarmee de gebeurtenissen worden geconverteerd naar html-indeling.

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

Voorbeeld 9: Een webpagina maken om de opgegeven services weer te geven

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

Met deze opdracht maakt en opent u een webpagina met de services op de computer die beginnen met A. Deze maakt gebruik van de parameters Titel, Hoofdtekst, PreContenten PostContent parameters van ConvertTo-Html- om de uitvoer aan te passen.

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

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

Parameters

-As

Hiermee geeft u op of het object is opgemaakt als een tabel of een lijst. De acceptabele waarden voor deze parameter zijn: Tabel en Lijst. De standaardwaarde is Tabel.

De tabelwaarde genereert een HTML-tabel die lijkt op de Windows 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.

De lijstwaarde genereert een HTML-tabel met twee kolommen voor elk object dat lijkt op de Windows PowerShell-lijstindeling. In de eerste kolom wordt de eigenschapsnaam weergegeven. in de tweede kolom wordt de eigenschapswaarde weergegeven.

Type:String
Geaccepteerde waarden:Table, List
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Body

Hiermee geeft u de tekst, als matrix, toe te voegen na het openen <body> tag. Standaard is er geen tekst op die positie.

Type:String[]
Position:3
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren: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
Aliassen:cu, uri
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Fragment

Geeft aan dat deze cmdlet alleen een HTML-tabel genereert. De HTML-, HEAD-, TITLE- en BODY-tags worden weggelaten.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Head

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

Type:String[]
Position:1
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren: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, zoals alle services op een computer, te verzenden, maakt ConvertTo-Html- een tabel met de eigenschappen van een verzameling of een matrix met objecten (System.Object[]). Als u een tabel van de afzonderlijke objecten wilt maken, gebruikt u de pijplijnoperator om de objecten door te geven aan ConvertTo-Html-.

Type:PSObject
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren: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
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-PreContent

Hiermee geeft u een matrix met tekst op die moet worden toegevoegd voordat de tag <TABLE> wordt geopend. Standaard is er geen tekst op die positie.

Type:String[]
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Property

Hiermee geeft u de eigenschappen van de objecten in de HTML. De waarde van de parameter eigenschap kan een nieuwe berekende eigenschap zijn. Als u een berekende eigenschap wilt maken, gebruikt u een hash-tabel. Geldige sleutels zijn:

  • Label <tekenreeks> (in tegenstelling tot Select-Object of Tabel opmaken, wordt de naamsleutel niet ondersteund)
  • Expressie <tekenreeks> of <scriptblok>
Type:Object[]
Position:0
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Title

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

Type:String
Position:2
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

Invoerwaarden

PSObject

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

Uitvoerwaarden

System.String or System.Xml.XmlDocument

Deze cmdlet retourneert een reeks tekenreeksen die geldige HTML vormen.

Notities

  • Als u deze cmdlet wilt gebruiken, geeft u een of meer objecten door aan 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 anders.

    • Wanneer u meerdere objecten doorstuurt naar een cmdlet, verzendt Windows PowerShell de objecten één voor één naar de cmdlet. Als gevolg hiervan maakt ConvertTo-Html- 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, ontvangt ConvertTo-Html- deze objecten als een verzameling of als matrix. Hierdoor wordt er 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 te verzenden naar ConvertTo-Html-, wordt in de resulterende tabel een objectmatrix (System.Object[]) en de eigenschappen ervan 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">)