ConvertTo-Html
Konverterar .NET-objekt till HTML som kan visas i en webbläsare.
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
Cmdleten ConvertTo-Html
konverterar .NET-objekt till HTML som kan visas i en webbläsare. Du kan använda den här cmdleten för att visa utdata från ett kommando på en webbsida.
Du kan använda parametrarna ConvertTo-Html
för för att välja objektegenskaper, ange ett tabell- eller listformat, ange HTML-sidrubriken, lägga till text före och efter objektet och för att endast returnera tabellen eller listfragmentet i stället för en strikt DTD-sida.
När du skickar flera objekt till ConvertTo-Html
skapar PowerShell tabellen (eller listan) baserat på egenskaperna för det första objektet som du skickar. Om de återstående objekten inte har någon av de angivna egenskaperna är egenskapsvärdet för objektet en tom cell. Om de återstående objekten har ytterligare egenskaper inkluderas inte dessa egenskapsvärden i filen.
Exempel
Exempel 1: Skapa en webbsida för att visa datumet
ConvertTo-Html -InputObject (Get-Date)
Det här kommandot skapar en HTML-sida som visar egenskaperna för det aktuella datumet. Den använder parametern InputObject för att skicka resultatet av ett Get-Date
kommando till cmdleten ConvertTo-Html
.
Exempel 2: Skapa en webbsida för att visa PowerShell-alias
Get-Alias | ConvertTo-Html | Out-File aliases.htm
Invoke-Item aliases.htm
Det här kommandot skapar en HTML-sida som visar PowerShell-aliasen i den aktuella konsolen.
Kommandot använder cmdleten Get-Alias
för att hämta aliasen. Den använder pipelineoperatorn (|
) för att skicka aliasen till cmdleten ConvertTo-Html
, vilket skapar HTML-sidan. Kommandot använder också cmdleten Out-File
för att skicka HTML-koden till aliases.htm
filen.
Exempel 3: Skapa en webbsida för att visa PowerShell-händelser
Get-EventLog -LogName "Windows PowerShell" | ConvertTo-Html | Out-File pslog.htm
Det här kommandot skapar en HTML-sida med namnet pslog.htm
som visar händelserna i Windows PowerShell händelseloggen på den lokala datorn.
Den använder cmdleten Get-EventLog
för att hämta händelserna i Windows PowerShell-loggen och använder sedan pipelineoperatorn (|
) för att skicka händelserna till cmdletenConvertTo-Html
. Kommandot använder också cmdleten Out-File
för att skicka HTML-koden till pslog.htm
filen.
Kommandot använder också cmdleten Out-File
för att skicka HTML-koden till pslog.htm
filen.
Exempel 4: Skapa en webbsida för att visa processer
Get-Process |
ConvertTo-Html -Property Name, Path, Company -Title "Process Information" |
Out-File proc.htm
Invoke-Item proc.htm
Dessa kommandon skapar och öppnar en HTML-sida som visar namn, sökväg och företag för processerna på den lokala datorn.
Det första kommandot använder cmdleten Get-Process
för att hämta objekt som representerar de processer som körs på datorn. Kommandot använder pipelineoperatorn (|
) för att skicka processobjekten till cmdleten ConvertTo-Html
.
Kommandot använder parametern Egenskap för att välja tre egenskaper för processobjekten som ska ingå i tabellen. Kommandot använder parametern Rubrik för att ange en rubrik för HTML-sidan. Kommandot använder också cmdleten Out-File
för att skicka den resulterande HTML-koden till en fil med namnet Proc.htm
.
Det andra kommandot använder cmdleten Invoke-Item
för att öppna Proc.htm
i standardwebbläsaren.
Exempel 5: Skapa en webbsida för att visa tjänstobjekt
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" />
...
Det här kommandot skapar en HTML-sida med de tjänstobjekt som cmdleten Get-Service
returnerar. Kommandot använder CssUri-parametern för att ange ett sammanhängande formatmall för HTML-sidan.
CssUri-parametern lägger till ytterligare en <link rel="stylesheet" type="text/css" href="test.css">
tagg i den resulterande HTML-koden. HREF-attributet i taggen innehåller namnet på formatmallen.
Exempel 6: Skapa en webbsida för att visa tjänstobjekt
Get-Service | ConvertTo-Html -As LIST | Out-File services.htm
Det här kommandot skapar en HTML-sida med de tjänstobjekt som cmdleten Get-Service
returnerar. Kommandot använder parametern Som för att ange ett listformat. Cmdleten Out-File
skickar den resulterande HTML-koden till Services.htm
filen.
Exempel 7: Skapa en webbtabell för aktuellt 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>
Det här kommandot använder ConvertTo-Html
för att generera en HTML-tabell med aktuellt datum. Kommandot använder cmdleten Get-Date
för att hämta det aktuella datumet. Den använder en pipelineoperator (|
) för att skicka resultatet till cmdleten ConvertTo-Html
.
Kommandot ConvertTo-Html
innehåller parametern Fragment , som begränsar utdata till en HTML-tabell. Därför utelämnas de andra elementen på en HTML-sida, till exempel taggarna <HEAD>
och <BODY>
.
Exempel 8: Skapa en webbsida för att visa PowerShell-händelser
Get-EventLog -Log "Windows PowerShell" | ConvertTo-Html -Property id, level, task
Det här kommandot använder cmdleten Get-EventLog
för att hämta händelser från Windows PowerShell händelseloggen.
Den använder en pipelineoperator (|
) för att skicka händelserna till cmdleten ConvertTo-Html
, som konverterar händelserna till HTML-format.
Kommandot ConvertTo-Html
använder parametern Egenskap för att endast välja ID, Nivå och Aktivitetsegenskaper för händelsen.
Exempel 9: Skapa en webbsida för att visa angivna tjänster
$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
Det här kommandot skapar och öppnar en webbsida som visar de tjänster på datorn som börjar med A
. Den använder parametrarna ConvertTo-Html
Rubrik, Brödtext, PreContent och PostContent för för att anpassa utdata.
Den första delen av kommandot använder cmdleten Get-Service
för att hämta tjänsterna på datorn som börjar med A
. Kommandot använder en pipelineoperator (|
) för att skicka resultatet till cmdleten ConvertTo-Html
. Kommandot använder också cmdleten Out-File
för att skicka utdata till Services.htm
filen.
Ett semikolon (;
) avslutar det första kommandot och startar ett andra kommando, som använder cmdleten Invoke-Item
Services.htm
för att öppna filen i standardwebbläsaren.
Exempel 10: Ange metaegenskaperna och teckenuppsättningen för HTML
Get-Service | ConvertTo-HTML -Meta @{
refresh=10
author="Author's Name"
keywords="PowerShell, HTML, ConvertTo-HTML"
} -Charset "UTF-8"
Det här kommandot skapar HTML för en webbsida med metataggar för uppdatering, författare och nyckelord. Teckenuppsättningen för sidan är inställd på UTF-8
Exempel 11: Ange HTML till XHTML Övergångs-DTD
Get-Service | ConvertTo-HTML -Transitional
Det här kommandot anger DOCTYPE
den returnerade HTML-koden till XHTML Övergångs-DTD
Parametrar
-As
Avgör om objektet är formaterat som en tabell eller en lista. Giltiga värden är Tabell och Lista. Standardvärdet är Tabell.
Tabellvärdet genererar en HTML-tabell som liknar PowerShell-tabellformatet. Rubrikraden visar egenskapsnamnen. Varje tabellrad representerar ett objekt och visar objektets värden för varje egenskap.
Listvärdet genererar en HTML-tabell med två kolumner för varje objekt som liknar PowerShell-listformatet. Den första kolumnen visar egenskapsnamnet. Den andra kolumnen visar egenskapsvärdet.
Type: | String |
Accepted values: | Table, List |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Body
Anger den text som ska läggas till efter öppningstaggen <BODY>
. Som standard finns det ingen text i den positionen.
Type: | String[] |
Position: | 3 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Charset
Anger text som ska läggas till i öppningstaggen <charset>
. Som standard finns det ingen text i den positionen.
Den här parametern introducerades i PowerShell 6.0.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CssUri
Anger URI (Uniform Resource Identifier) för den sammanhängande formatmallen (CSS) som tillämpas på HTML-filen. URI:n ingår i en formatmallslänk i utdata.
Type: | Uri |
Aliases: | cu, uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Fragment
Genererar endast en HTML-tabell. Taggarna <HTML>
, <HEAD>
, <TITLE>
och <BODY>
utelämnas.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Head
Anger innehållet i taggen <HEAD>
. Standardvärdet är <title\>HTML TABLE</title>
. Om du använder parametern Huvud ignoreras parametern Rubrik .
Type: | String[] |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Anger vilka objekt som ska representeras i HTML. Ange en variabel som innehåller objekten eller skriv ett kommando eller uttryck som hämtar objekten.
Om du använder den här parametern för att skicka flera objekt, till exempel alla tjänster på en dator, ConvertTo-Html
skapar en tabell som visar egenskaperna för en samling eller en matris med objekt. Om du vill skapa en tabell med enskilda objekt använder du pipelineoperatorn för att skicka objekten till ConvertTo-Html
.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Meta
Anger text som ska läggas till i öppningstaggen <meta>
. Som standard finns det ingen text i den positionen.
Den här parametern introducerades i PowerShell 6.0.
Type: | Hashtable |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PostContent
Anger text som ska läggas till efter den avslutande </TABLE>
taggen. Som standard finns det ingen text i den positionen.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PreContent
Anger text som ska läggas till innan den inledande <TABLE>
taggen. Som standard finns det ingen text i den positionen.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Property
Innehåller de angivna egenskaperna för objekten i HTML-koden. Värdet för parametern Egenskap kan vara en ny beräknad egenskap. Den beräknade egenskapen kan vara ett skriptblock eller en hash-tabell. Giltiga nyckel/värde-par är:
Name
(eller etikett) –<string>
(läggs till i PowerShell 6.x)Expression
-<string>
Eller<script block>
FormatString
-<string>
Width
-<int32>
- måste vara större än0
Alignment
- värdet kan varaLeft
,Center
ellerRight
Mer information finns i about_Calculated_Properties.
Type: | Object[] |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Title
Anger en rubrik för HTML-filen, d.v.s. texten som visas mellan taggarna <TITLE>
.
Type: | String |
Position: | 2 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Transitional
DOCTYPE
Ändrar till XHTML Övergångs-DTD, Standard DOCTYPE
är XHTML Strict DTD.
Den här parametern introducerades i PowerShell 6.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Indata
Du kan skicka valfritt objekt till den här cmdleten.
Utdata
Den här cmdleten returnerar en matris med html-strängar som representerar det konverterade objektet.
Kommentarer
Använd den här cmdleten genom att skicka ett eller flera objekt till cmdleten eller använda parametern InputObject för att ange objektet. När indata består av flera objekt är utdata från dessa två metoder helt olika.
När du skickar flera objekt till en cmdlet skickar PowerShell objekten till cmdleten en i taget.
ConvertTo-Html
Därför skapas en tabell som visar de enskilda objekten. Om du till exempel skickar processerna på en dator tillConvertTo-Html
visar den resulterande tabellen alla processer.När du använder parametern InputObject för att skicka flera objekt,
ConvertTo-Html
tar emot dessa objekt som en samling eller som en matris. Därför skapas en tabell som visar matrisen och dess egenskaper, inte objekten i matrisen. Om du till exempel använder InputObject för att skicka processerna på en dator tillConvertTo-Html
visar den resulterande tabellen en objektmatris och dess egenskaper.För att följa XHTML Strict DTD ändras taggen
DOCTYPE
i enlighet med detta:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"\>