ConvertTo-Html
Преобразует объекты .NET в код 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 в HTML, которые можно отобразить в веб-браузере. Этот командлет можно использовать для отображения выходных данных команды на веб-странице.
Параметры можно использовать для выбора свойств объекта, указания формата таблицы или списка, указания заголовка ConvertTo-Html
HTML-страницы, добавления текста до и после объекта, а также для возврата только фрагмента таблицы или списка вместо строгой страницы DTD.
При отправке нескольких объектов в ConvertTo-Html
PowerShell создает таблицу (или список) на основе свойств первого отложенного объекта. Если у оставшихся объектов нет одного из указанных свойств, значением свойства этого объекта является пустая ячейка. Если оставшиеся объекты содержат дополнительные свойства, их значения не включаются в файл.
Примеры
Пример 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
.
Команда использует параметр Property для выбора трех свойств объектов процесса, которые будут включены в таблицу. Команда использует параметр 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
включает параметр Fragment , который ограничивает выходные данные 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 для выбора только свойств ID, Level и Task события.
Пример 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
. Для настройки выходных данных используются параметры ConvertTo-Html
Title, Body, PreContent и PostContent.
В первой части команды используется Get-Service
командлет для получения служб на компьютере, которые начинаются с A
. Команда использует оператор конвейера (|
) для отправки результатов командлету ConvertTo-Html
. Команда также использует командлет для Out-File
отправки выходных данных в Services.htm
файл.
Точка с запятой (;
) завершает первую команду и запускает вторую команду, которая использует Invoke-Item
командлет для открытия файла в браузере Services.htm
по умолчанию.
Пример 10. Задание свойств Meta и кодировки HTML
Get-Service | ConvertTo-HTML -Meta @{
refresh=10
author="Author's Name"
keywords="PowerShell, HTML, ConvertTo-HTML"
} -Charset "UTF-8"
Эта команда создает HTML-код для веб-страницы с метатегами для ключевых слов refresh, author и . Для страницы задано значение UTF-8.
Пример 11. Установка html-кода на XHTML Переходное DTD
Get-Service | ConvertTo-HTML -Transitional
Эта команда задает DOCTYPE
для возвращаемого HTML значение XHTML Переходное DTD.
Параметры
-As
Определяет, форматируется ли объект как таблица или список. Допустимые значения: Table и List. Значение по умолчанию — Table.
Значение Таблицы создает таблицу HTML, похожую на формат таблицы PowerShell. В строке заголовка отображаются имена свойств. Каждая строка таблицы представляет объект и отображает значения объекта для каждого свойства.
Значение List создает html-таблицу из двух столбцов для каждого объекта, похожего на формат списка PowerShell. В первом столбце отображается имя свойства. Во втором столбце отображается значение свойства .
Type: | String |
Accepted values: | Table, List |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Body
Задает текст, добавляемый после открывающего тега <BODY>
. По умолчанию текст в этой позиции отсутствует.
Type: | String[] |
Position: | 3 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Charset
Указывает текст, добавляемый в открывающий <charset>
тег. По умолчанию текст в этой позиции отсутствует.
Этот параметр появился в PowerShell 6.0.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CssUri
Указывает идентификатор URI таблицы каскадных стилей (CSS), применяемый к HTML-файлу. Этот URI включается в ссылку таблицы стилей в выходных данных.
Type: | Uri |
Aliases: | cu, uri |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Fragment
Создает только HTML-таблицу. Теги <HTML>
, <HEAD>
, <TITLE>
и <BODY>
опущены.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Head
Задает содержимое тега <HEAD>
. Значение по умолчанию — <title\>HTML TABLE</title>
. При использовании параметра Head параметр Title игнорируется.
Type: | String[] |
Position: | 1 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Указывает объекты, которые должны быть представлены в формате HTML. Введите переменную, которая содержит объекты, или команду или выражение, которое возвращает объекты.
Если этот параметр используется для отправки нескольких объектов, таких как все службы на компьютере, создается таблица, ConvertTo-Html
отображающая свойства коллекции или массива объектов. Чтобы создать таблицу отдельных объектов, используйте оператор конвейера для передачи объектов в ConvertTo-Html
.
Type: | PSObject |
Position: | Named |
Default value: | None |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Meta
Указывает текст, добавляемый в открывающий <meta>
тег. По умолчанию текст в этой позиции отсутствует.
Этот параметр появился в PowerShell 6.0.
Type: | Hashtable |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PostContent
Задает текст, добавляемый после закрывающего тега </TABLE>
. По умолчанию текст в этой позиции отсутствует.
Type: | String[] |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PreContent
Задает текст, добавляемый перед открывающим тегом <TABLE>
. По умолчанию текст в этой позиции отсутствует.
Type: | String[] |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Property
Включает указанные свойства объектов в HTML. Значение параметра Property может быть новым вычисляемым свойством. Вычисляемое свойство может быть блоком скрипта или хэш-таблицей. Допустимые пары "ключ-значение":
Name
(или метка) —<string>
(добавлено в PowerShell 6.x)Expression
-<string>
или<script block>
FormatString
-<string>
Width
-<int32>
— должно быть больше0
Alignment
— значение может иметь значениеLeft
,Center
илиRight
Дополнительные сведения см. в разделе about_Calculated_Properties.
Type: | Object[] |
Position: | 0 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Title
Указывает заголовок HTML-файл, т. е. текст, расположенный между тегами <TITLE>
.
Type: | String |
Position: | 2 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Transitional
Изменяет на DOCTYPE
XHTML Переходный DTD. Значение по умолчанию DOCTYPE
— XHTML Strict DTD.
Этот параметр появился в PowerShell 6.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Входные данные
В этот командлет можно передать любой объект.
Выходные данные
Этот командлет возвращает массив строк 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"\>
Связанные ссылки
Обратная связь
Отправить и просмотреть отзыв по