ConvertTo-Html

Create an HTML page from one or more PowerShell objects.

Syntax  
      ConvertTo-Html [[-head] string[] ] [[-title] string] [[-body] string[] ]
         [-CssUri Uri] [[-property] Object[] ]
            [-As {TABLE | LIST}] [-inputObject psobject]
               [-PreContent string[]] [-PostContent string[]] [CommonParameters]
  
     ConvertTo-Html [-Fragment] [[-property] Object[] ]
            [-As {TABLE | LIST}] [-inputObject psobject]
               [-PreContent string[]] [-PostContent string[]] [CommonParameters]

Key
   -As string
Format the object as a table or a list. Valid values are TABLE or LIST. -CssUri Uri
The Uniform Resource Identifier (URI) of the cascading style sheet The CSS URI is included as a style sheet link in the output. -head string Text to include in the <head> element of the HTML output. default = "HTML TABLE"
If you specify -Head, the -Title parameter is ignored. -title string Text to include in the <title> element of the HTML output. -body string Text to include in the <body> element of the HTML. -Fragment
Generate only an HTML table. The HTML, HEAD, TITLE, and BODY tags are omitted. -inputObject psobject The object(s) to represent as an HTML table. A variable that contains the object or a command/expression that gets the object. When the -InputObject parameter is used to submit a collection of items, such as all of the services on a computer, ConvertTo-Html receives one object that represents the collection. Because one object cannot be converted, ConvertTo-Html returns the entire collection unchanged. To convert multiple items, pipe them to ConvertTo-Html. This parameter is an implementation detail: its purpose is to enable input via the pipeline, and its direct use with arrays (collections) does not (yet) provide any useful functionality. -property Object Properties of the input object to appear in the HTML table. -PreContent string[]
Text to add before the opening <TABLE> tag. -PostContent string[]
Text to add after the closing </TABLE> tag.

The object property names appear as HTML table column headings.

Examples

Display the date as HTML on the console :

PS C:\> get-date | convertto-html

Save the system processes to C:\processes.html

PS C:\> Get-Process | ConvertTo-Html name,path,fileversion | Set-Content c:\processes.htm

Save the system services to C:\services.html

PS C:\> get-service | ConvertTo-Html -Title "Services" -Body "<H2>The result of get-service</H2> " -Property Name,Status  >  c:\services.html

Save the system services to C:\services.html and format in color (example from Hung Yuwu ):

PS C:\> get-service | ConvertTo-Html -Title "Services" -Body "<H2>The result of get-service</H2> " -Property Name,Status |
foreach {if($_ -like "*<td>Running</td>*"){$_ -replace "<tr>", "<tr bgcolor=green>"}elseif($_ -like "*<td>Stopped</td>*"){$_ -replace "<tr>", "<tr bgcolor=red>"}else{$_}} > c:\services.html

Save the system services to C:\services.html and format with css, then open the HTML page with Invoke-Item:

PS C:\> get-service | ConvertTo-Html -CssUri "SS64.css" > c:\services.html
PS C:\> Invoke-Item c:\services.html

Get events from the "Windows PowerShell" event log, select only the ID, Level, and Task properties and format as HTML:

PS C:\> get-eventlog -log "Windows PowerShell" | convertto-html -property id, level, task

“If you have an important point to make, don’t try to be subtle or clever. Use a pile driver. Hit the point once. Then come back and hit it again. Then hit it a third time - a tremendous whack” ~ Winston Churchill

Related PowerShell Cmdlets:

export-clixml - Produce a clixml representation of a PowerShell objects.
export-csv - Export to Comma Separated Values (spreadsheet).
Invoke-Item - Invoke an executable or open a file.


 
Copyright © 1999-2022 SS64.com
Some rights reserved