ConvertTo-Html
Converteert .NET-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[]>]
[-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 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 het selecteren van ConvertTo-Html
objecteigenschappen gebruiken, een tabel- of lijstindeling opgeven, de titel van de HTML-pagina opgeven, tekst voor en na het object toevoegen en alleen de tabel of lijstfragment retourneren, in plaats van een strikte DTD-pagina.
Wanneer u meerdere objecten naar ConvertTo-Html
verzendt, 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: Een webpagina maken om de datum weer te geven
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 naar de ConvertTo-Html
cmdlet te verzenden.
Voorbeeld 2: Een webpagina maken 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. Hierbij wordt de pijplijnoperator (|
) gebruikt om de aliassen naar de ConvertTo-Html
cmdlet te verzenden, waardoor 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
Get-EventLog -LogName "Windows PowerShell" | ConvertTo-Html | Out-File pslog.htm
Met deze opdracht maakt u een HTML-pagina met de naam die de gebeurtenissen weergeeft pslog.htm
in het Windows PowerShell-gebeurtenislogboek op de lokale computer.
De cmdlet gebruikt de Get-EventLog
cmdlet om de gebeurtenissen op te halen in het Windows PowerShell-logboek 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 maken 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 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 gebruikt 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 naar de ConvertTo-Html
cmdlet te verzenden.
De opdracht gebruikt 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 cmdlet om de resulterende HTML te verzenden naar een bestand met de Out-File
naam Proc.htm
.
De tweede opdracht gebruikt de Invoke-Item
cmdlet om de Proc.htm
in de standaardbrowser te openen.
Voorbeeld 5: Een webpagina maken 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 maakt gebruik van de CssUri-parameter om een trapsgewijs opmaakmodel voor de HTML-pagina op te geven.
De cssUri-parameter 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
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 maken 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 van 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 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
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, waarmee de gebeurtenissen worden geconverteerd naar HTML-indeling.
De ConvertTo-Html
opdracht 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
$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 die de services weergeeft op de computer die beginnen met A
. Hierbij worden de parameters Title, Body, PreContent en PostContent gebruikt ConvertTo-Html
om de uitvoer aan te passen.
Het eerste deel van de opdracht gebruikt 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 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 in de standaardbrowser te openen.
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
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 tabelwaarde 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.
De lijstwaarde genereert een HTML-tabel met twee kolommen 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 |
Geaccepteerde waarden: | Table, List |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Body
Hiermee geeft u de tekst op die moet worden toegevoegd na de openingstag <BODY>
. Standaard is er geen tekst op die positie.
Type: | String[] |
Position: | 3 |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Charset
Hiermee geeft u tekst op die moet worden toegevoegd 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 |
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
Hiermee wordt alleen een HTML-tabel gegenereerd. De <HTML>
, <HEAD>
en <TITLE>
<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. 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 |
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, 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 geven aan ConvertTo-Html
.
Type: | PSObject |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
-Meta
Hiermee geeft u tekst op die moet worden toegevoegd 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 |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-PostContent
Hiermee geeft u tekst op die moet worden toegevoegd 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 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 |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | 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 dan0
Alignment
- waarde kan zijnLeft
,Center
ofRight
Zie about_Calculated_Properties voor meer informatie.
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 tussen de <TITLE>
tags wordt weergegeven.
Type: | String |
Position: | 2 |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Transitional
Wijzigt de DOCTYPE
XHTML-overgangs-DTD, standaard DOCTYPE
is XHTML Strict DTD.
Deze parameter is geïntroduceerd in PowerShell 6.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
Invoerwaarden
U kunt elk object doorsluisen naar deze cmdlet.
Uitvoerwaarden
Deze cmdlet retourneert een matrix met tekenreeksen van HTML die het geconverteerde object vertegenwoordigen.
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 PowerShell de objecten één voor één naar de cmdlet. Als gevolg hiervan
ConvertTo-Html
maakt u een tabel waarin de afzonderlijke objecten worden weergegeven. Als u bijvoorbeeld de processen op een computer doorsluist,ConvertTo-Html
worden in de resulterende tabel alle processen weergegeven.Wanneer u de parameter InputObject gebruikt om meerdere objecten te verzenden,
ConvertTo-Html
ontvangt u 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 naar teConvertTo-Html
verzenden, geeft de resulterende tabel een objectmatrix en de bijbehorende eigenschappen weer.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"\>