ConvertTo-Html
Převede objekty .NET na HTML, které lze zobrazit ve webovém prohlížeči.
Syntaxe
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
Rutina ConvertTo-Html
převede objekty .NET na HTML, které lze zobrazit ve webovém prohlížeči. Tuto rutinu můžete použít k zobrazení výstupu příkazu na webové stránce.
Pomocí parametrů ConvertTo-Html
můžete vybrat vlastnosti objektu, určit formát tabulky nebo seznamu, zadat název stránky HTML, přidat text před a za objekt a vrátit pouze fragment tabulky nebo seznamu místo striktní stránky DTD.
Když odešlete více objektů do ConvertTo-Html
, PowerShell vytvoří tabulku (nebo seznam) na základě vlastností prvního objektu, který odešlete. Pokud zbývající objekty nemají jednu ze zadaných vlastností, hodnota vlastnosti tohoto objektu je prázdná buňka. Pokud zbývající objekty mají další vlastnosti, tyto hodnoty vlastností nejsou zahrnuty do souboru.
Příklady
Příklad 1: Vytvoření webové stránky pro zobrazení data
ConvertTo-Html -InputObject (Get-Date)
Tento příkaz vytvoří stránku HTML, která zobrazí vlastnosti aktuálního data. K odeslání výsledků příkazu do ConvertTo-Html
rutiny používá parametr InputObject.Get-Date
Příklad 2: Vytvoření webové stránky pro zobrazení aliasů PowerShellu
Get-Alias | ConvertTo-Html | Out-File aliases.htm
Invoke-Item aliases.htm
Tento příkaz vytvoří stránku HTML se seznamem aliasů PowerShellu v aktuální konzole.
Příkaz používá rutinu Get-Alias
k získání aliasů. Pomocí operátoru kanálu (|
) odešle aliasy rutině ConvertTo-Html
, která vytvoří stránku HTML. Příkaz také používá rutinu Out-File
k odeslání kódu HTML do aliases.htm
souboru.
Příklad 3: Vytvoření webové stránky pro zobrazení událostí PowerShellu
Get-EventLog -LogName "Windows PowerShell" | ConvertTo-Html | Out-File pslog.htm
Tento příkaz vytvoří stránku HTML s názvem pslog.htm
, která zobrazí události v protokolu událostí Prostředí Windows PowerShell v místním počítači.
Pomocí rutiny Get-EventLog
získá události v protokolu Windows PowerShellu a pak pomocí operátoru kanálu (|
) odešle události do rutiny ConvertTo-Html
. Příkaz také používá rutinu Out-File
k odeslání kódu HTML do pslog.htm
souboru.
Příkaz také používá rutinu Out-File
k odeslání kódu HTML do pslog.htm
souboru.
Příklad 4: Vytvoření webové stránky pro zobrazení procesů
Get-Process |
ConvertTo-Html -Property Name, Path, Company -Title "Process Information" |
Out-File proc.htm
Invoke-Item proc.htm
Tyto příkazy vytvoří a otevřou stránku HTML, která obsahuje název, cestu a společnost procesů v místním počítači.
První příkaz pomocí Get-Process
rutiny získá objekty, které představují procesy spuštěné v počítači. Příkaz pomocí operátoru kanálu (|
) odešle objekty procesu do rutiny ConvertTo-Html
.
Příkaz pomocí parametru Property vybere tři vlastnosti procesních objektů, které mají být zahrnuty do tabulky. Příkaz pomocí parametru Title určuje název stránky HTML. Příkaz také pomocí rutiny Out-File
odešle výsledný kód HTML do souboru s názvem Proc.htm
.
Druhý příkaz používá rutinu Invoke-Item
Proc.htm
k otevření ve výchozím prohlížeči.
Příklad 5: Vytvoření webové stránky pro zobrazení objektů služby
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" />
...
Tento příkaz vytvoří stránku HTML objektů služby, které rutina Get-Service
vrátí. Příkaz používá k zadání šablony stylů CSS pro stránku HTML parametr CssUri .
Parametr CssUri přidá do výsledného kódu HTML další <link rel="stylesheet" type="text/css" href="test.css">
značku. Atribut HREF ve značce obsahuje název šablony stylů.
Příklad 6: Vytvoření webové stránky pro zobrazení objektů služby
Get-Service | ConvertTo-Html -As LIST | Out-File services.htm
Tento příkaz vytvoří stránku HTML objektů služby, které rutina Get-Service
vrátí. Příkaz používá parametr As k určení formátu seznamu. Out-File
Rutina odešle výsledný kód HTML do Services.htm
souboru.
Příklad 7: Vytvoření webové tabulky pro aktuální 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>
Tento příkaz používá ConvertTo-Html
k vygenerování tabulky HTML aktuálního data. Příkaz pomocí rutiny Get-Date
získá aktuální datum. K odeslání výsledků rutině ConvertTo-Html
používá operátor kanálu (|
).
Příkaz ConvertTo-Html
obsahuje parametr Fragment , který omezuje výstup na tabulku HTML. V důsledku toho jsou ostatní prvky stránky HTML, jako <HEAD>
jsou například značky <BODY>
, vynechány.
Příklad 8: Vytvoření webové stránky pro zobrazení událostí PowerShellu
Get-EventLog -Log "Windows PowerShell" | ConvertTo-Html -Property id, level, task
Tento příkaz používá rutinu Get-EventLog
k získání událostí z protokolu událostí Windows PowerShellu.
Používá operátor kanálu (|
) k odeslání událostí do ConvertTo-Html
rutiny, která převádí události do formátu HTML.
Příkaz ConvertTo-Html
pomocí parametru Property vybere pouze vlastnosti ID, úrovně a úlohy události.
Příklad 9: Vytvoření webové stránky pro zobrazení zadaných služeb
$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
Tento příkaz vytvoří a otevře webovou stránku, která zobrazí služby v počítači, který začíná A
. K přizpůsobení výstupu používá parametry ConvertTo-Html
Title, Body, PreContent a PostContent.
První část příkazu používá rutinu Get-Service
k získání služeb v počítači, který začíná A
. Příkaz pomocí operátoru kanálu (|
) odešle výsledky rutině ConvertTo-Html
. Příkaz také používá rutinu Out-File
k odeslání výstupu do Services.htm
souboru.
Středník (;
) ukončí první příkaz a spustí druhý příkaz, který pomocí rutiny Invoke-Item
otevře Services.htm
soubor ve výchozím prohlížeči.
Příklad 10: Nastavení vlastností meta a znakové sady HTML
Get-Service | ConvertTo-HTML -Meta @{
refresh=10
author="Author's Name"
keywords="PowerShell, HTML, ConvertTo-HTML"
} -Charset "UTF-8"
Tento příkaz vytvoří html pro webovou stránku s metaznačky pro aktualizaci, autora a klíčová slova. Znaková sada pro stránku je nastavená na UTF-8.
Příklad 11: Nastavení html na XHTML přechodné DTD
Get-Service | ConvertTo-HTML -Transitional
Tento příkaz nastaví DOCTYPE
vrácený kód HTML na XHTML Transitional DTD.
Parametry
-As
Určuje, zda je objekt formátován jako tabulka nebo seznam. Platné hodnoty jsou Tabulka a Seznam. Výchozí hodnota je Tabulka.
Hodnota Tabulka vygeneruje tabulku HTML, která se podobá formátu tabulky PowerShellu. Řádek záhlaví zobrazuje názvy vlastností. Každý řádek tabulky představuje objekt a zobrazuje hodnoty objektu pro každou vlastnost.
Hodnota List vygeneruje tabulku HTML se dvěma sloupci pro každý objekt, který se podobá formátu seznamu PowerShellu. První sloupec zobrazí název vlastnosti. Druhý sloupec zobrazí hodnotu vlastnosti.
Typ: | String |
Přípustné hodnoty: | Table, List |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Body
Určuje text, který se má přidat za levou <BODY>
značku. Ve výchozím nastavení není v této pozici žádný text.
Typ: | String[] |
Position: | 3 |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Charset
Určuje text, který se má přidat do počáteční <charset>
značky. Ve výchozím nastavení není v této pozici žádný text.
Tento parametr byl představen v PowerShellu 6.0.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-CssUri
Určuje identifikátor URI (Uniform Resource Identifier) šablony stylů CSS (Cascading Style Sheet), který se použije u souboru HTML. Identifikátor URI je součástí odkazu šablony stylů ve výstupu.
Typ: | Uri |
Aliasy: | cu, uri |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Fragment
Generuje pouze tabulku HTML. Vynechá se hodnota <HTML>
, <HEAD>
, <TITLE>
a <BODY>
značky.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Head
Určuje obsah značky <HEAD>
. Výchozí hodnota je <title\>HTML TABLE</title>
. Pokud použijete parametr Head , bude parametr Title ignorován.
Typ: | String[] |
Position: | 1 |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-InputObject
Určuje objekty, které mají být reprezentovány v HTML. Zadejte proměnnou obsahující objekty nebo zadejte příkaz nebo výraz, který objekty získá.
Pokud tento parametr použijete k odeslání více objektů, například všech služeb v počítači, vytvoří tabulku, ConvertTo-Html
která zobrazuje vlastnosti kolekce nebo pole objektů. Chcete-li vytvořit tabulku jednotlivých objektů, pomocí operátoru kanálu řaděte objekty do ConvertTo-Html
.
Typ: | PSObject |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Meta
Určuje text, který se má přidat do počáteční <meta>
značky. Ve výchozím nastavení není v této pozici žádný text.
Tento parametr byl představen v PowerShellu 6.0.
Typ: | Hashtable |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-PostContent
Určuje text, který se má přidat za pravou </TABLE>
značku. Ve výchozím nastavení není v této pozici žádný text.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-PreContent
Určuje text, který se má přidat před počáteční <TABLE>
značku. Ve výchozím nastavení není v této pozici žádný text.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Property
Zahrnuje zadané vlastnosti objektů v HTML. Hodnota parametru Property může být nová počítaná vlastnost. Počítaná vlastnost může být blok skriptu nebo tabulka hash. Platné páry klíč-hodnota jsou:
Name
(nebo popisek) –<string>
(přidáno v PowerShellu 6.x)Expression
-<string>
nebo<script block>
FormatString
-<string>
Width
-<int32>
- musí být větší než0
Alignment
- hodnota může býtLeft
,Center
neboRight
Další informace najdete v tématu about_Calculated_Properties.
Typ: | Object[] |
Position: | 0 |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Title
Určuje název souboru HTML, tj. text, který se zobrazí mezi <TITLE>
značkami.
Typ: | String |
Position: | 2 |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Transitional
Změní přechod DOCTYPE
XHTML DTD, výchozí DOCTYPE
hodnota je XHTML Strict DTD.
Tento parametr byl představen v PowerShellu 6.0.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
Vstupy
Do této rutiny můžete převést libovolný objekt.
Výstupy
Tato rutina vrátí pole řetězců HTML představujících převedený objekt.
Poznámky
Chcete-li použít tuto rutinu, předávejte jeden nebo více objektů do rutiny nebo použijte parametr InputObject k určení objektu. Když se vstup skládá z více objektů, výstup těchto dvou metod je poměrně odlišný.
Když do rutiny předáte více objektů, PowerShell odešle objekty do rutiny po jednom. V důsledku toho vytvoří tabulku,
ConvertTo-Html
která zobrazí jednotlivé objekty. Pokud například procesy v počítačiConvertTo-Html
předáte, zobrazí výsledná tabulka všechny procesy.Když použijete parametr InputObject k odeslání více objektů,
ConvertTo-Html
obdrží tyto objekty jako kolekci nebo jako pole. V důsledku toho vytvoří tabulku, která zobrazí pole a její vlastnosti, nikoli položky v poli. Pokud například použijete InputObject k odeslání procesů v počítači doConvertTo-Html
, výsledná tabulka zobrazí pole objektů a jeho vlastnosti.Aby bylo v souladu s XHTML Strict DTD,
DOCTYPE
značka se odpovídajícím způsobem upraví:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"\>