Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Форматирование таблиц "ConvertTo-Html"

Ответить
Настройки темы
PowerShell - Форматирование таблиц "ConvertTo-Html"

Пользователь


Сообщения: 126
Благодарности: 3

Профиль | Отправить PM | Цитировать


Друзья, помогите решить проблему. Делаю вывод переменной в HTML, но никак не могу назначить CSS стили для формируемых табличек ConvertTo-Html. Получается что размеры таблиц зависят от помещающемся в нем тексте, а жестко для каждого столбика свой размер задать не получается.
Код: Выделить весь код
$var | ConvertTo-Html  $Headers[0], $Headers[1], $Headers[2], $Headers[3], $Headers[4], $Headers[5]
Как быть? Заранее спасибо!

Отправлено: 16:42, 25-09-2012

 

Ветеран


Сообщения: 1259
Благодарности: 861

Профиль | Отправить PM | Цитировать


Пример для Get-Process и свойств Name,VirtualMemorySize64
Код: Выделить весь код
$header = @"
<!DOCTYPE html>
<html>
<head>
<style type="text/css"> 
table
{
border:1px solid #000000;
word-wrap:break-word;
}
</style>
</head>
<body>
<table border="1">
<tr><td width="50">Name</td><td width="50">VirtualMemorySize64</td></tr>
"@

$header += Get-Process |  Foreach {"<tr><td width=""50"">$($_.Name)</td><td width=""50"">$($_.VirtualMemorySize64)</td></tr>"} 

$header += @"
</table> 
</body>
</html>
"@

$header | out-file result.html
ii result.html
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:48, 25-09-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 126
Благодарности: 3

Профиль | Отправить PM | Цитировать


Очень здорово, можно теперь делать любые шаблоны. Но у меня возникла небольшая проблема с выводом из объекта:
Код: Выделить весь код
$header += $var |  Foreach {"<tr><td>$($Headers[0])</td><td>$($Headers[1])</td></tr>"}
Не выводит значения, а только заголовки
читать дальше »
Статус \ База Файл 24.09 25.09
Статус \ База Файл 24.09 25.09
Статус \ База Файл 24.09 25.09
Статус \ База Файл 24.09 25.09
...


Как быть далее? )

Последний раз редактировалось rudimko, 26-09-2012 в 08:17.


Отправлено: 08:07, 26-09-2012 | #3


Ветеран


Сообщения: 1259
Благодарности: 861

Профиль | Отправить PM | Цитировать


$Headers[0],$Headers[1] - Вставляете заголовки,получаете заголовки.

Отправлено: 08:52, 26-09-2012 | #4


Пользователь


Сообщения: 126
Благодарности: 3

Профиль | Отправить PM | Цитировать


Kazun, А как можно вывести значения тогда из переменной?

Отправлено: 09:02, 26-09-2012 | #5


Ветеран


Сообщения: 1259
Благодарности: 861

Профиль | Отправить PM | Цитировать


Непонятно,что в этой переменной.

Отправлено: 09:04, 26-09-2012 | #6


Пользователь


Сообщения: 126
Благодарности: 3

Профиль | Отправить PM | Цитировать


Kazun,
Тебе это знакомо...
Сначала в цикле выполняются условия, потом на основе их результата создается объект
...
New-Object PsObject -Property @{
$Headers[0] = $FileYesterday.Directory.Name
$Headers[1] = $FileYesterday.Name
$Headers[2] = "$("{0:N0}" -f ($FileBef.Length/1mb)) мб"
$Headers[3] = "$("{0:N0}" -f ($FileYesterday.Length/1mb)) мб"
$Headers[4] = $Status
$Headers[5] = $FileDelta
...

PS D:\Temp\Scripts> $var | Format-List *
читать дальше »

24.09 : 2*949 мб
25.09 : 2*948 мб
<img src='arrow-refresh-icon.png'/> : -1 мб<img src='arrow-down-icon.png'/>
Файл полного ежедневного бэкапа : base_1_backup_201209252152.bak
Статус : <img src='error-icon.png'/>
База : base_1

24.09 : 3*694 мб
25.09 : 3*695 мб
<img src='arrow-refresh-icon.png'/> : 1 мб<img src='arrow-up-icon.png'/>
Файл полного ежедневного бэкапа : base_2_backup_201209252152.bak
Статус : <img src='accept-icon.png'/>
База : base_2

и так далее...


Весь скрипт выслал по PM...

Последний раз редактировалось rudimko, 26-09-2012 в 09:16.


Отправлено: 09:08, 26-09-2012 | #7


Ветеран


Сообщения: 1259
Благодарности: 861

Профиль | Отправить PM | Цитировать


<tr><td width="50">$($Headers[0])</td><td width="50">$($Headers[1])</td><td width="50">$($Headers[2])</td><td width="50">$($Headers[3])</td><td width="50">$($Headers[4])</td></tr> - Заголовок таблицы

Код: Выделить весь код
$var | foreach {"<tr><td>$($_.($Headers[0]))</td>td>$($_.($Headers[1]))</td>td>$($_.($Headers[2]))</td>td>$($_.($Headers[3]))</td>td>$($_.($Headers[4]))</td></tr>"}

Отправлено: 09:23, 26-09-2012 | #8


Пользователь


Сообщения: 126
Благодарности: 3

Профиль | Отправить PM | Цитировать


Блиннн... Пробовал что то подобное, не вышло... моя ошибка в неверном написании, писал - ($Headers[0]) и $_.($Headers[0]), а надо было - $($_.($Headers[0]))
Спасибо!

Отправлено: 09:31, 26-09-2012 | #9



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Форматирование таблиц "ConvertTo-Html"

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Установка - При выборе форматирование выдает сообщение "форматирование не возможно так как..." denis_azbuka Microsoft Windows 2000/XP 1 07-02-2012 14:05
2007 - Word 2007. Процесс "Форматирование" при открытии документа Farxat Microsoft Office (Word, Excel, Outlook и т.д.) 3 01-07-2010 18:57
Доступ - [решено] Форматирование флешки под учётной записью "user" bk99 Microsoft Windows 2000/XP 2 29-03-2010 21:32
PowerShell - [решено] Не могу разобратся с Convertto-html glazemir Скриптовые языки администрирования Windows 3 26-06-2009 08:26
Запретить/удалить пункт "Programs" ("Программы") из меню кнопки "Start" ("Пуск") submaster Microsoft Windows NT/2000/2003 5 13-09-2006 12:29




 
Переход