Преобразует объекты Microsoft .NET Framework в код HTML, который может отображаться в веб-браузере.
Синтаксис
ConvertTo-Html [[-Head] <string[]>] [[-Title] <string>] [[-Body] <string[]>] [-CssUri <Uri>] [[-Property] <Object[]>] [-As <string>] [-InputObject <psobject>] [-PostContent <string[]>] [-PreContent <string[]>] [<CommonParameters>] ConvertTo-Html [-Fragment] [[-Property] <Object[]>] [-As <string>] [-InputObject <psobject>] [-PostContent <string[]>] [-PreContent <string[]>] [<CommonParameters>]
Описание
Командлет ConvertTo-Html преобразует объекты .NET Framework в код HTML, который может отображаться в веб-браузере. Этот командлет можно использовать для вывода результатов выполнения команды на веб-страницу.
Параметры командлета ConvertTo-Html позволяют выбирать свойства объектов, задавать формат таблиц или списков, определять заголовок HTML-страницы, добавлять текст перед объектом и после него, а также возвращать только фрагмент с таблицей или списком, а не полную страницу.
При передаче командлету ConvertTo-Html нескольких объектов Windows PowerShell создает таблицу (или список) на основании свойств первого переданного объекта. Если у оставшихся объектов нет одного из указанных свойств, то значению этого свойства для такого объекта будет соответствовать пустая ячейка. Если же у оставшихся объектов имеются дополнительные свойства, значения этих свойств будут проигнорированы.
Параметры
-As <string>
Определяет форматирование объекта — таблица или список. Допустимые значения: TABLE и LIST. По умолчанию используется значение TABLE.
В случае указания значения TABLE создается таблица HTML, напоминающая формат таблицы Windows PowerShell. В строке заголовка отображаются имена свойств. Каждая строка таблицы соответствует одному объекту и содержит значения всех свойств этого объекта.
В случае указания значения LIST для каждого объекта создается таблица HTML из двух столбцов, напоминающая формат списка Windows PowerShell. В первом столбце отображается имя свойства, а во втором — его значение.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
Table |
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Body <string[]>
Задает текст для добавления после открывающего тега <BODY>. По умолчанию в этом месте нет текста.
Обязательно? |
false |
Позиция? |
4 |
Значение по умолчанию |
No text. |
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-CssUri <Uri>
Задает универсальный идентификатор ресурса (URI) каскадной таблицы стилей (CSS), применяемой к HTML-файлу. URI включается в ссылку на таблицу стилей в выходных данных.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Fragment
Создает только таблицу HTML. Теги HTML, HEAD, TITLE и BODY будут опущены.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Head <string[]>
Задает содержимое тега <HEAD>. По умолчанию используется код "<title>HTML TABLE</title>". Если параметр Head задан, то параметр Title игнорируется.
Обязательно? |
false |
Позиция? |
2 |
Значение по умолчанию |
<title>HTML TABLE</title> |
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-InputObject <psobject>
Задает объекты, которые должны быть представлены в коде HTML. Введите переменную, содержащую объекты, либо получающую их команду или выражение.
При задании с помощью этого параметра нескольких объектов, например при перечислении всех работающих на компьютере служб, командлет ConvertTo-Html создает таблицу, в которой отображаются свойства коллекции или массива объектов (System.Object[]). Чтобы создать таблицу из отдельных объектов, следует передавать их командлету ConvertTo-Html с помощью оператора конвейера.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
true (ByValue) |
Принимать подстановочные знаки? |
false |
-PostContent <string[]>
Задает текст для добавления после закрывающего тега </TABLE>. По умолчанию в этом месте нет текста.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
No text |
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-PreContent <string[]>
Задает текст для добавления перед открывающим тегом <TABLE>. По умолчанию в этом месте нет текста.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
No text |
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Property <Object[]>
Включает в код HTML заданные свойства объектов.
Обязательно? |
false |
Позиция? |
1 |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Title <string>
Задает заголовок HTML-файла, т. е. текст, помещаемый между тегами <TITLE>.
Обязательно? |
false |
Позиция? |
3 |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
<CommonParameters>
Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.
Ввод и вывод
Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.
Входные данные |
System.Management.Automation.PSObject Любой объект .NET можно передать командлету ConvertTo-Html по конвейеру. |
Выходные данные |
System.String Командлет ConvertTo-Html возвращает набор строк, которые вместе составляют корректный HTML-документ. |
Примечания
Чтобы использовать этот командлет, передайте ему один или несколько объектов с помощью конвейера или задайте объект с помощью параметра InputObject. Если командлет получает несколько объектов, то результат применения этих двух подходов различается.
-- Если несколько объектов передаются командлету по конвейеру, то Windows PowerShell отправляет объекты командлету по одному. В результате командлет ConvertTo-Html создает таблицу, в которой отображаются отдельные объекты. Например, если по конвейеру передать командлету ConvertTo-Html запущенные на компьютере процессы, то в полученной таблице будут содержатся все процессы.
-- Если для передачи нескольких объектов используется параметр InputObject, командлет ConvertTo-Html получает эти объекты в виде коллекции или массива. В результате он создает таблицу, в которой содержится массив и его свойства, а не элементы массива. Например, если с помощью параметра InputObject передать командлету ConvertTo-Html запущенные на компьютере процессы, то в таблице будет показан массив объектов (System.Object[]) и его свойства.
Для соответствия определению DTD-файла xhtml1-strict.dtd соответствующим образом изменяется тег DOCTYPE:
(<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">)
Пример 1
C:\PS>convertto-html -inputobject (get-date) Описание ----------- Эта команда создает HTML-страницу, на которой отображаются свойства текущей даты. Параметр InputObject используется для передачи результатов выполнения командлета Get-Date командлету ConvertTo-Html.
Пример 2
C:\PS>get-alias | convertto-html > aliases.htm C:\PS> invoke-item aliases.htm Описание ----------- Эта команда создает HTML-страницу, на которой перечислены псевдонимы Windows PowerShell для текущей консоли. Команда получает псевдонимы с помощью командлета Get-Alias. Для передачи псевдонимов командлету ConvertTo-Html, который создает HTML-страницу, используется оператор конвейера (|).
Пример 3
C:\PS>get-eventlog -logname "Windows PowerShell | convertto-html > pslog.htm Описание ----------- Эта команда создает HTML-страницу с именем pslog.htm, на которой отображаются события, зарегистрированные в журнале событий Windows PowerShell на локальном компьютере. Для получения событий из журнала Windows PowerShell, используется командлет Get-EventLog, а для передачи этих событий командлету ConvertTo-Html используется оператор конвейера (|). Кроме того, команда использует оператор перенаправления (>), чтобы переслать код HTML в файл pslog.htm.
Пример 4
C:\PS>get-process | convertto-html -property Name, Path, Company -title "Process Information" > proc.htm; ii proc.htm Описание ----------- Эти команды создают и открывают HTML-страницу, на которой перечислены значения имени, пути и компании для процессов на локальном компьютере. Первая команда с помощью командлета Get-Process получает объекты, которые представляют выполняющиеся на компьютере процессы. Команда передает объекты процессов в командлет ConvertTo-Html с помощью оператора конвейера (|). Команда использует параметр Property, чтобы выбрать три свойства объектов процессов для включения в таблицу. Параметр Title используется в команде для задания заголовка HTML-страницы. Кроме того, команда использует оператор перенаправления (>), чтобы переслать полученный код HTML в файл Proc.htm. Вторая команда использует командлет Invoke-Item (псевдоним ii), чтобы открыть файл Proc.htm в браузере по умолчанию. Две команды разделены точкой с запятой (;).
Пример 5
C:\PS>get-service | convertto-html -CssUri "test.css" <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://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. Чтобы указать каскадную таблицу стилей для HTML-страницы, в этой команде используется параметр CssUri. Параметр CssUri добавляет в итоговый HTML-документ дополнительный тег <link rel="stylesheet" type="text/css". Атрибут HREF в этом теге содержит имя таблицы стилей.
Пример 6
C:\PS>get-service | convertto-html -as LIST > services.htm Описание ----------- Эта команда создает HTML-страницу для объектов-служб, возвращаемых командлетом Get-Service. Параметр As используется в этой команде для указания формата списка. Оператор перенаправления (>) передает полученный код HTML в файл Services.htm.
Пример 7
C:\PS>get-date | cth -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 (обозначенному псевдонимом "cth"). Команда ConvertTo-Html включает параметр Fragment, который ограничивает вывод только таблицей HTML. В результате другие элементы HTML-страницы, например теги <HEAD> и <BODY>, пропускаются.
Пример 8
C:\PS>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
C:\PS>get-service A* | ConvertTo-Html -title "Windows Services: Server01" -body (get-date) -pre "<P>Generated by Corporate IT</P >" -post "For details, contact Corporate IT." > services.htm; ii services.htm Описание ----------- Эта команда создает и открывает веб-страницу, на которой отображается список служб компьютера, имена которых начинаются на "A". Она использует параметры Title, Body, PreContent и PostContent командлета ConvertTo-Html, чтобы настроить содержимое страницы. Первая часть команды получает начинающиеся на "A" службы компьютера с помощью командлета Get-Service. Затем результаты передаются в командлет ConvertTo-Html с помощью оператора конвейера (|). Кроме того, команда использует оператор перенаправления (>), чтобы переслать результат в файл Services.htm. Двоеточие (;) отделяет первую команду от второй, в которой с помощью командлета Invoke-Item (псевдоним "ii") файл Services.htm открывается в браузере по умолчанию.
См. также