Поделиться через


ConvertTo-Html

Преобразует объекты .NET в HTML, которые можно отобразить в веб-браузере.

Синтаксис

Page (По умолчанию)

ConvertTo-Html
    [[-Property] <Object[]>]
    [[-Body] <String[]>]
    [[-Head] <String[]>]
    [[-Title] <String>]
    [-InputObject <PSObject>]
    [-As <String>]
    [-CssUri <Uri>]
    [-PostContent <String[]>]
    [-PreContent <String[]>]
    [<CommonParameters>]

Fragment

ConvertTo-Html
    [[-Property] <Object[]>]
    [-InputObject <PSObject>]
    [-As <String>]
    [-Fragment]
    [-PostContent <String[]>]
    [-PreContent <String[]>]
    [<CommonParameters>]

Описание

Командлет ConvertTo-Html преобразует объекты .NET в HTML, которые можно отобразить в веб-браузере. Этот командлет можно использовать для отображения выходных данных команды на веб-странице.

Параметры ConvertTo-Html можно использовать для выбора свойств объекта, указания формата таблицы или списка, указания заголовка HTML-страницы, добавления текста до и после объекта, а также для возврата только фрагмента таблицы или списка вместо строгой страницы DTD.

При отправке нескольких объектов в ConvertTo-HtmlPowerShell создает таблицу (или список) на основе свойств первого объекта, который вы отправляете. Если оставшиеся объекты не имеют одного из указанных свойств, значение свойства этого объекта является пустой ячейкой. Если остальные объекты имеют дополнительные свойства, эти значения свойств не включаются в файл.

Примеры

Пример 1. Создание веб-страницы для отображения даты

ConvertTo-Html -InputObject (Get-Date)

Эта команда создает HTML-страницу, отображающую свойства текущей даты. Он использует параметр InputObject для отправки результатов команды Get-Date командлету ConvertTo-Html.

Пример 2. Создание веб-страницы для отображения псевдонимов PowerShell

Get-Alias | ConvertTo-Html | Out-File aliases.htm
Invoke-Item aliases.htm

Эта команда создает HTML-страницу, в которой перечислены псевдонимы PowerShell в текущей консоли.

Команда использует командлет Get-Alias для получения псевдонимов. Он использует оператор конвейера (|) для отправки псевдонимов в командлет ConvertTo-Html, который создает HTML-страницу. Команда также использует командлет Out-File для отправки HTML-кода в файл aliases.htm.

Пример 3. Создание веб-страницы для отображения событий PowerShell

Get-EventLog -LogName "Windows PowerShell" | ConvertTo-Html | Out-File pslog.htm

Эта команда создает HTML-страницу с именем pslog.htm, в которой отображаются события в журнале событий Windows PowerShell на локальном компьютере.

Он использует командлет Get-EventLog для получения событий в журнале Windows PowerShell, а затем использует оператор конвейера (|) для отправки событий в командлет ConvertTo-Html. Команда также использует командлет Out-File для отправки HTML-кода в файл pslog.htm.

Команда также использует командлет Out-File для отправки HTML-кода в файл pslog.htm.

Пример 4. Создание веб-страницы для отображения процессов

Get-Process |
  ConvertTo-Html -Property Name, Path, Company -Title "Process Information" |
    Out-File proc.htm
Invoke-Item proc.htm

Эти команды создают и открывают HTML-страницу, в которой перечислены имя, путь и компания процессов на локальном компьютере.

Первая команда использует командлет Get-Process для получения объектов, представляющих процессы, выполняемые на компьютере. Команда использует оператор конвейера (|) для отправки объектов процесса в командлет ConvertTo-Html.

Команда использует параметр свойства , чтобы выбрать три свойства объектов процесса, которые будут включены в таблицу. Команда использует параметр Title для указания заголовка html-страницы. Команда также использует командлет Out-File для отправки полученного HTML-файла в файл с именем Proc.htm.

Вторая команда использует командлет Invoke-Item для открытия Proc.htm в браузере по умолчанию.

Пример 5. Создание веб-страницы для отображения объектов службы

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 добавляет дополнительный тег <link rel="stylesheet" type="text/css" href="test.css"> в полученный HTML-код. Атрибут HREF в теге содержит имя таблицы стилей.

Пример 6. Создание веб-страницы для отображения объектов службы

Get-Service | ConvertTo-Html -As List | Out-File services.htm

Эта команда создает HTML-страницу объектов службы, возвращаемых командлетом Get-Service. Команда использует параметр As для указания формата списка. Командлет Out-File отправляет полученный HTML-код в файл Services.htm.

Пример 7. Создание веб-таблицы для текущей даты

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>

Эта команда использует ConvertTo-Html для создания HTML-таблицы текущей даты. Команда использует командлет Get-Date для получения текущей даты. Он использует оператор конвейера (|) для отправки результатов в командлет ConvertTo-Html.

Команда ConvertTo-Html включает параметр фрагмента, который ограничивает выходные данные html-таблицей. В результате другие элементы HTML-страницы, такие как <HEAD> и <BODY> теги, опущены.

Пример 8. Создание веб-страницы для отображения событий PowerShell

Get-EventLog -Log "Windows PowerShell" | ConvertTo-Html -Property Id, Level, Task

Эта команда использует командлет Get-EventLog для получения событий из журнала событий Windows PowerShell.

Он использует оператор конвейера (|) для отправки событий в командлет ConvertTo-Html, который преобразует события в формат HTML.

Команда ConvertTo-Html использует параметр Property для выбора только свойств идентификатора, уровняи свойств задачи события.

Пример 9. Создание веб-страницы для отображения указанных служб

$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

Эта команда создает и открывает веб-страницу, отображающую службы на компьютере, который начинается с A. Для настройки выходных данных используется заголовка, текст, preContentи параметры PostContentConvertTo-Html.

Первая часть команды использует командлет Get-Service для получения служб на компьютере, который начинается с A. Команда использует оператор конвейера (|) для отправки результатов командлету ConvertTo-Html. Команда также использует командлет Out-File для отправки выходных данных в файл Services.htm.

Точка с запятой (;) заканчивает первую команду и запускает вторую команду, которая использует командлет Invoke-Item для открытия файла Services.htm в браузере по умолчанию.

Параметры

-As

Определяет, форматируется ли объект как таблица или список. Допустимые значения: таблица и list. Значение по умолчанию — таблица.

Значение таблицы создает HTML-таблицу, похожую на формат таблицы PowerShell. В строке заголовка отображаются имена свойств. Каждая строка таблицы представляет объект и отображает значения объекта для каждого свойства.

Значение списка создает таблицу HTML двух столбцов для каждого объекта, который напоминает формат списка PowerShell. В первом столбце отображается имя свойства. Второй столбец отображает значение свойства.

Свойства параметров

Тип:String
Default value:None
Допустимые значения:Table, List
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Body

Задает текст, добавляемый после открывающего тега <BODY>. По умолчанию текст в этой позиции отсутствует.

Свойства параметров

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

Page
Position:3
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-CssUri

Указывает универсальный идентификатор ресурса (URI) каскадной таблицы стилей (CSS), применяемой к HTML-файлу. Универсальный код ресурса (URI) включен в ссылку таблицы стилей в выходных данных.

Свойства параметров

Тип:Uri
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:cu, УРИ

Наборы параметров

Page
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Fragment

Создает только HTML-таблицу. Теги <HTML>, <HEAD>, <TITLE>и <BODY> отсутствуют.

Свойства параметров

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

Fragment
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Head

Указывает содержимое тега <HEAD>. Значение по умолчанию — <title\>HTML TABLE</title>. Если используется параметр Head, параметр Title игнорируется.

Свойства параметров

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

Page
Position:1
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-InputObject

Указывает объекты, которые должны быть представлены в HTML. Введите переменную, содержащую объекты или введите команду или выражение, которое получает объекты.

Если этот параметр используется для отправки нескольких объектов, таких как все службы на компьютере, ConvertTo-Html создает таблицу, отображающую свойства коллекции или массива объектов. Чтобы создать таблицу отдельных объектов, используйте оператор конвейера для передачи объектов в ConvertTo-Html.

Свойства параметров

Тип:PSObject
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:True
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-PostContent

Указывает текст, добавляемый после закрывающего тега </TABLE>. По умолчанию текст в этой позиции отсутствует.

Свойства параметров

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-PreContent

Указывает текст, добавляемый перед открывающим тегом <TABLE>. По умолчанию текст в этой позиции отсутствует.

Свойства параметров

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Property

Включает указанные свойства объектов в HTML. Значение параметра свойства может быть новым вычисляемым свойством. Вычисляемое свойство может быть скриптблоком или хэш-таблицей. Допустимые сочетания ключей и значений:

  • Expression - <string> или <scriptblock>
  • FormatString - <string>
  • Width - <int32> - должно быть больше 0
  • Alignment — значение может быть Left, Centerили Right

См. раздел about_Calculated_Propertiesдля получения дополнительных сведений.

Свойства параметров

Тип:

Object[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:0
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Title

Задает заголовок HTML-файла, то есть текст, который отображается между тегами <TITLE>.

Свойства параметров

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

Page
Position:2
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

CommonParameters

Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.

Входные данные

PSObject

Вы можете передать любой объект в этот cmdlet.

Выходные данные

String

Этот командлет возвращает массив строк HTML, представляющих преобразованный объект.

Примечания

Чтобы использовать этот командлет, передайте один или несколько объектов в командлет или используйте параметр InputObject для указания объекта. Если входные данные состоят из нескольких объектов, выходные данные этих двух методов совершенно разные.

  • Когда вы передаете несколько объектов командлету, PowerShell отправляет объекты в командлет по одному за раз. В результате 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"\>