ConvertTo-Html
.NET オブジェクトを、Web ブラウザーで表示できる HTML に変換します。
構文
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>]
説明
このコマンドレットは ConvertTo-Html 、.NET オブジェクトを Web ブラウザーに表示できる HTML に変換します。 このコマンドレットを使用すると、Web ページにコマンドの出力を表示できます。
オブジェクトのプロパティの選択、テーブルまたはリスト形式の指定、HTML ページのタイトルの指定、オブジェクトの ConvertTo-Html 前後にテキストを追加するパラメーター、厳密な DTD ページではなくテーブルまたはリスト フラグメントのみを返すパラメーターを使用できます。
複数のオブジェクトを ConvertTo-Html送信すると、PowerShell は、最初に送信したオブジェクトのプロパティに基づいてテーブル (またはリスト) を作成します。 残りのオブジェクトに指定したプロパティのいずれかがない場合は、そのオブジェクトのプロパティ値が空のセルになります。 残りのオブジェクトに追加のプロパティがある場合は、これらのプロパティ値は、ファイルには含まれません。
例
例 1: 日付を表示する Web ページを作成する
ConvertTo-Html -InputObject (Get-Date)
このコマンドは、現在の日付のプロパティを表示する HTML ページを作成します。 InputObject パラメーターを使用して、コマンドの結果をGet-DateコマンドレットにConvertTo-Html送信します。
例 2: PowerShell エイリアスを表示する Web ページを作成する
Get-Alias | ConvertTo-Html | Out-File aliases.htm
Invoke-Item aliases.htm
このコマンドは、現在のコンソールで PowerShell エイリアスを一覧表示する HTML ページを作成します。
このコマンドでは、コマンドレットを Get-Alias 使用してエイリアスを取得します。 パイプライン演算子 (|) を使用して、HTML ページを作成するコマンドレットに ConvertTo-Html エイリアスを送信します。 このコマンドでは、コマンドレットを Out-File 使用して HTML コードをファイルに aliases.htm 送信します。
例 3: PowerShell イベントを表示する Web ページを作成する
Get-EventLog -LogName "Windows PowerShell" | ConvertTo-Html | Out-File pslog.htm
このコマンドは、ローカル コンピューターのWindows PowerShell イベント ログにイベントを表示する HTML pslog.htm ページを作成します。
コマンドレットをGet-EventLog使用してWindows PowerShell ログ内のイベントを取得し、パイプライン演算子 (|) を使用してコマンドレットにイベントをConvertTo-Html送信します。 このコマンドでは、コマンドレットを Out-File 使用して HTML コードをファイルに pslog.htm 送信します。
このコマンドでは、コマンドレットを Out-File 使用して HTML コードをファイルに pslog.htm 送信します。
例 4: プロセスを表示する Web ページを作成する
Get-Process |
ConvertTo-Html -Property Name, Path, Company -Title "Process Information" |
Out-File proc.htm
Invoke-Item proc.htm
これらのコマンドは、ローカル コンピューター上のプロセスの名前、パス、および会社を一覧表示する HTML ページを作成し、開きます。
最初のコマンドでは、コマンドレットを Get-Process 使用して、コンピューターで実行されているプロセスを表すオブジェクトを取得します。 このコマンドでは、パイプライン演算子 (|) を使用して、プロセス オブジェクトをコマンドレットに ConvertTo-Html 送信します。
このコマンドは 、Property パラメーターを使用して、テーブルに含めるプロセス オブジェクトの 3 つのプロパティを選択します。 このコマンドでは 、Title パラメーターを使用して HTML ページのタイトルを指定します。 また、このコマンドはコマンドレットを Out-File 使用して、結果の HTML を名前付きの Proc.htmファイルに送信します。
2 番目のコマンドでは、コマンドレットを Invoke-Item 使用して既定の Proc.htm ブラウザーで開きます。
例 5: サービス オブジェクトを表示する Web ページを作成する
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" />
...
このコマンドは、コマンドレットから返されるサービス オブジェクトの HTML ページを Get-Service 作成します。 このコマンドでは 、CssUri パラメーターを使用して、HTML ページのカスケード スタイル シートを指定します。
CssUri パラメーターは、結果の HTML に追加<link rel="stylesheet" type="text/css" href="test.css">のタグを追加します。 このタグの HREF 属性には、スタイル シートの名前が含まれています。
例 6: サービス オブジェクトを表示する Web ページを作成する
Get-Service | ConvertTo-Html -As LIST | Out-File services.htm
このコマンドは、コマンドレットから返されるサービス オブジェクトの HTML ページを Get-Service 作成します。 このコマンドでは 、As パラメーターを使用してリスト形式を指定します。 コマンドレット Out-File は、結果の HTML をファイルに送信します Services.htm 。
例 7: 現在の日付の Web テーブルを作成する
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>
このコマンドは、現在の日付の HTML テーブルを生成するために使用 ConvertTo-Html します。 このコマンドでは、コマンドレットを Get-Date 使用して現在の日付を取得します。 パイプライン演算子 (|) を使用して、コマンドレットに結果を ConvertTo-Html 送信します。
この ConvertTo-Html コマンドには、 出力 を HTML テーブルに制限する Fragment パラメーターが含まれています。 その結果、<HEAD> や <BODY> タグなど、HTML ページの他の要素が省略されます。
例 8: PowerShell イベントを表示する Web ページを作成する
Get-EventLog -Log "Windows PowerShell" | ConvertTo-Html -Property id, level, task
このコマンドは、コマンドレットをGet-EventLog使用して、Windows PowerShell イベント ログからイベントを取得します。
パイプライン演算子 (|) を使用して、イベントを HTML 形式に ConvertTo-Html 変換するコマンドレットにイベントを送信します。
このコマンドはConvertTo-Html、Property パラメーターを使用して、イベントの ID、Level、および Task プロパティのみを選択します。
例 9: 指定したサービスを表示する Web ページを作成する
$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
このコマンドは、で始まるコンピューター上のサービスを表示する Web ページを作成して開きます A。 Title、Body、PreContent、PostContent のConvertTo-Html各パラメーターを使用して、出力をカスタマイズします。
コマンドの最初の部分では、コマンドレットを Get-Service 使用して、最初に始まる Aコンピューター上のサービスを取得します。 コマンドはパイプライン演算子 (|) を使用して、コマンドレットに結果を ConvertTo-Html 送信します。 このコマンドでは、コマンドレットを Out-File 使用してファイルに出力を Services.htm 送信します。
セミコロン (;) は、最初のコマンドを終了し、2 番目のコマンドを開始します。このコマンドは、コマンドレットを Invoke-Item 使用して既定のブラウザーでファイルを開 Services.htm きます。
例 10: HTML のメタ プロパティと文字セットを設定する
Get-Service | ConvertTo-HTML -Meta @{
refresh=10
author="Author's Name"
keywords="PowerShell, HTML, ConvertTo-HTML"
} -Charset "UTF-8"
このコマンドは、更新、作成者、キーワードのメタ タグを含む Web ページの HTML を作成します。 ページの文字セットが UTF-8 に設定されている
例 11: HTML を XHTML 遷移 DTD に設定する
Get-Service | ConvertTo-HTML -Transitional
このコマンドは、DOCTYPE返された HTML の XHTML 遷移 DTD を設定します。
パラメーター
オブジェクトがテーブルまたは一覧のどちらで書式設定されるかを決定します。 有効な値は Table と List です。 既定値は Table です。
Table 値は、PowerShell テーブル形式に似た HTML テーブルを生成します。 ヘッダー行には、プロパティ名が表示されます。 各テーブル行は、オブジェクトを表し、各プロパティのオブジェクトの値を表示します。
List 値は、PowerShell リスト形式に似たオブジェクトごとに 2 列の HTML テーブルを生成します。 最初の列にプロパティ名が表示されます。 2 番目の列には、プロパティ値が表示されます。
| Type: | String |
| Accepted values: | Table, List |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
開始の <BODY> タグの後に追加するテキストを指定します。 既定では、その位置にテキストがありません。
| Type: | String[] |
| Position: | 3 |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
開始 <charset> タグに追加するテキストを指定します。 既定では、その位置にテキストがありません。
このパラメーターは、PowerShell 6.0 で導入されました。
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
HTML ファイルに適用されるカスケード スタイル シート (CSS) の Uniform Resource Identifier (URI) を指定します。 URI は、出力のスタイル シートのリンクに含まれます。
| Type: | Uri |
| Aliases: | cu, uri |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
HTML テーブルのみを生成します。 、<HTML><HEAD>、<TITLE>および<BODY>タグは省略されます。
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
<HEAD> タグの内容を指定します。 既定では、 <title\>HTML TABLE</title>です。 Head パラメーターを使用する場合、Title パラメーターは無視されます。
| Type: | String[] |
| Position: | 1 |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
HTML で表されるオブジェクトを指定します。 オブジェクトが格納されている変数を入力するか、オブジェクトを取得するコマンドまたは式を入力します。
このパラメーターを使用して、コンピューター上のすべてのサービスなど、複数のオブジェクトを送信する場合は、 ConvertTo-Html コレクションまたはオブジェクトの配列のプロパティを表示するテーブルを作成します。 個々のオブジェクトのテーブルを作成するには、パイプライン演算子を使用してオブジェクト ConvertTo-Htmlをパイプ処理します。
| Type: | PSObject |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
開始 <meta> タグに追加するテキストを指定します。 既定では、その位置にテキストがありません。
このパラメーターは、PowerShell 6.0 で導入されました。
| Type: | Hashtable |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
終了の </TABLE> タグの後に追加するテキストを指定します。 既定では、その位置にテキストがありません。
| Type: | String[] |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
開始の <TABLE> タグの前に追加するテキストを指定します。 既定では、その位置にテキストがありません。
| Type: | String[] |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
HTML 内のオブジェクトの指定したプロパティが含まれます。 Property パラメーターの値には、新しい計算プロパティを指定できます。 計算プロパティには、スクリプト ブロックまたはハッシュ テーブルを指定できます。 有効なキーと値のペアは次のとおりです。
Name(またはラベル) -<string>(PowerShell 6.x で追加)Expression-<string>または<script block>FormatString-<string>Width-<int32>- より大きくする必要があります0Alignment- 値はLeft、、、Center、またはRight
詳細については、 about_Calculated_Propertiesを参照してください。
| Type: | Object[] |
| Position: | 0 |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
HTML のファイルのタイトルを指定します。つまり、<TITLE> タグの間に表示されるテキストです。
| Type: | String |
| Position: | 2 |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
DOCTYPEXHTML 遷移 DTD に変更します。既定値DOCTYPEは XHTML Strict DTD です。
このパラメーターは、PowerShell 6.0 で導入されました。
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
入力
任意の .NET オブジェクトを .NET オブジェクトに ConvertTo-Htmlパイプできます。
出力
System.String or System.Xml.XmlDocument
ConvertTo-Html は、有効な HTML を構成する一連の文字列を返します。
メモ
このコマンドレットを使用するには、1 つ以上のオブジェクトをコマンドレットにパイプするか 、InputObject パラメーターを使用してオブジェクトを指定します。 入力が複数のオブジェクトで構成されている場合、これら 2 つのメソッドの出力は大きく異なります。
複数のオブジェクトをコマンドレットにパイプすると、PowerShell は一度に 1 つずつオブジェクトをコマンドレットに送信します。 その結果、
ConvertTo-Html個々のオブジェクトを表示するテーブルを作成します。 たとえば、コンピューターConvertTo-Html上のプロセスをパイプ処理すると、結果のテーブルにすべてのプロセスが表示されます。InputObject パラメーターを使用して複数のオブジェクトを送信する場合は、
ConvertTo-Htmlこれらのオブジェクトをコレクションまたは配列として受け取ります。 その結果、配列内の項目ではなく、配列とプロパティを表示するテーブルが作成されます。 たとえば、 InputObject を 使用してコンピューターConvertTo-Html上のプロセスを送信すると、結果のテーブルにオブジェクト配列とそのプロパティが表示されます。XHTML Strict DTD に準拠するために、
DOCTYPEタグはそれに応じて変更されます。<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"\>