将System.Array转换为HTML

时间:2018-08-09 10:49:54

标签: powershell

我有一个名为$bodyab的系统数组变量,看起来像这样:

VMName                      Name                                                CreationTime       
------                      ----                                                ------------       
SHARED-server.host.com      SHARED-server.host.com - (02/10/2017 - 13:02:44)    02/10/2017 13:05:58
Internal-Oliver-Cpanel      Internal-Oliver-Cpanel - (27/07/2018 - 14:10:31)    27/07/2018 14:10:33
UK-56084-89941-WIN          UK-56084-89941-WIN - (22/07/2018 - 20:06:10)        22/07/2018 20:06:17
UK-33776-50475-WIN          UK-33776-50475-WIN - (04/07/2018 - 11:25:26)        04/07/2018 11:25:33
UK-37741                    UK-37741_replica - (14/05/2018 - 16:05:13)      

我需要将其转换为HTML

$bodyHtml = $bodyab | ConvertTo-Html

我得到以下输出:

<table>
<colgroup><col/><col/><col/><col/><col/><col/></colgroup>
<tr><th>ClassId2e4f51ef21dd47e99d3c952918aff9cd</th><th>pageHeaderEntry</th> 
<th>pageFooterEntry</th><th>autosizeInfo</th><th>shapeInfo</th> 
<th>groupingEntry</th></tr>
<tr><td>033ecb2bc07a4d43b5ef94ed5a35d280</td><td></td><td></td><td></td> 
<td>Microsoft.PowerShell.Commands.Internal.Format.TableHeaderInfo</td><td>

而不是表格。我真的不确定到底发生了什么。

1 个答案:

答案 0 :(得分:2)

好的,我自己解决了这个问题。我之前在脚本中使用过格式表来选择特定的属性,然后将它们传递到管道中。问题是FT仅设计用于视觉输出,如果在代码中使用它,则会导致类似这样的错误。

正确的做法是在代码中使用Select-object选择并传递感兴趣的属性。